Index: pgsql.c =================================================================== RCS file: /repository/php-src/ext/pgsql/pgsql.c,v retrieving revision 1.312 diff -u -r1.312 pgsql.c --- pgsql.c 19 Jul 2004 07:19:42 -0000 1.312 +++ pgsql.c 6 Nov 2004 22:36:48 -0000 @@ -3641,7 +3641,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { if (!strcmp(Z_STRVAL_PP(val), "t") || !strcmp(Z_STRVAL_PP(val), "T") || @@ -3649,14 +3649,14 @@ !strcmp(Z_STRVAL_PP(val), "true") || !strcmp(Z_STRVAL_PP(val), "True") || !strcmp(Z_STRVAL_PP(val), "yes") || !strcmp(Z_STRVAL_PP(val), "Yes") || !strcmp(Z_STRVAL_PP(val), "1")) { - ZVAL_STRING(new_val, "'t'", 1); + ZVAL_TRUE(new_val); } else if (!strcmp(Z_STRVAL_PP(val), "f") || !strcmp(Z_STRVAL_PP(val), "F") || !strcmp(Z_STRVAL_PP(val), "n") || !strcmp(Z_STRVAL_PP(val), "N") || !strcmp(Z_STRVAL_PP(val), "false") || !strcmp(Z_STRVAL_PP(val), "False") || !strcmp(Z_STRVAL_PP(val), "no") || !strcmp(Z_STRVAL_PP(val), "No") || !strcmp(Z_STRVAL_PP(val), "0")) { - ZVAL_STRING(new_val, "'f'", 1); + ZVAL_FALSE(new_val); } else { php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Detected invalid value (%s) for PostgreSQL %s field (%s)", Z_STRVAL_PP(val), Z_STRVAL_PP(type), field); @@ -3668,15 +3668,16 @@ case IS_LONG: case IS_BOOL: if (Z_LVAL_PP(val)) { - ZVAL_STRING(new_val, "'t'", 1); + ZVAL_TRUE(new_val); } else { - ZVAL_STRING(new_val, "'f'", 1); + ZVAL_FALSE(new_val); } break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); + break; default: @@ -3695,7 +3696,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: better regex must be used */ @@ -3718,7 +3719,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3737,7 +3738,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: better regex must be used */ @@ -3759,7 +3760,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3777,11 +3778,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - if (opt & PGSQL_CONV_FORCE_NULL) { - ZVAL_STRING(new_val, "NULL", 1); - } else { - ZVAL_STRING(new_val, "''", 1); - } + ZVAL_NULL(new_val); } else { Z_TYPE_P(new_val) = IS_STRING; @@ -3810,7 +3807,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3828,7 +3825,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: Better regex must be used */ @@ -3852,7 +3849,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3869,7 +3866,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: Better regex must be used */ @@ -3884,7 +3881,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3902,7 +3899,7 @@ switch(Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: better regex must be used */ @@ -3917,7 +3914,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3933,7 +3930,7 @@ switch(Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: better regex must be used */ @@ -3948,7 +3945,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3964,7 +3961,7 @@ switch(Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { /* FIXME: better regex must be used */ @@ -3979,7 +3976,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -3995,7 +3992,7 @@ switch(Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { @@ -4058,7 +4055,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -4074,7 +4071,7 @@ switch (Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { unsigned char *tmp; @@ -4101,7 +4098,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: @@ -4118,7 +4115,7 @@ switch(Z_TYPE_PP(val)) { case IS_STRING: if (Z_STRLEN_PP(val) == 0) { - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); } else { if (php_pgsql_convert_match(Z_STRVAL_PP(val), "^([0-9a-f]{2,2}:){5,5}[0-9a-f]{2,2}$", 1 TSRMLS_CC) == FAILURE) { @@ -4132,7 +4129,7 @@ break; case IS_NULL: - ZVAL_STRING(new_val, "NULL", 1); + ZVAL_NULL(new_val); break; default: