From: Wez Furlong Date: Tue, 18 May 2004 15:57:46 +0000 (+0000) Subject: Tweaks for win32 X-Git-Tag: RELEASE_0_1~147 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2a9fa244586271f9d6d6bebf1536a20c2ee872b7;p=php Tweaks for win32 --- diff --git a/ext/pdo/pdo_sql_parser.re b/ext/pdo/pdo_sql_parser.re index 6a14cfe53c..2bcde49f1c 100644 --- a/ext/pdo/pdo_sql_parser.re +++ b/ext/pdo/pdo_sql_parser.re @@ -21,9 +21,9 @@ #include "php.h" #include "php_pdo_driver.h" -#define TEXT 1 -#define BIND 2 -#define EOI 3 +#define PDO_PARSER_TEXT 1 +#define PDO_PARSER_BIND 2 +#define PDO_PARSER_EOI 3 #define RET(i) {s->cur = cursor; return i; } @@ -51,16 +51,16 @@ static int scan(Scanner *s) */ /*!re2c - (["] (ESC|ANYNOEOF\[\\"])* ["]) { RET(TEXT); } - BINDCHR { RET(BIND); } - SPECIALS { RET(TEXT); } - (ANYNOEOF\SPECIALS)+ { RET(TEXT); } - EOF { RET(EOI); } + (["] (ESC|ANYNOEOF\[\\"])* ["]) { RET(PDO_PARSER_TEXT); } + BINDCHR { RET(PDO_PARSER_BIND); } + SPECIALS { RET(PDO_PARSER_TEXT); } + (ANYNOEOF\SPECIALS)+ { RET(PDO_PARSER_TEXT); } + EOF { RET(PDO_PARSER_EOI); } */ } int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char **outquery, - int *outquery_len) + int *outquery_len TSRMLS_DC) { Scanner s; char *ptr; @@ -92,13 +92,13 @@ int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char **ou ptr = *outquery; s.cur = inquery; s.lim = inquery + inquery_len; - while((t = scan(&s)) != EOI) { - if(t == TEXT) { + while((t = scan(&s)) != PDO_PARSER_EOI) { + if(t == PDO_PARSER_TEXT) { memcpy(ptr, s.tok, s.cur - s.tok); ptr += (s.cur - s.tok); *outquery_len += (s.cur - s.tok); } - else if(t == BIND) { + else if(t == PDO_PARSER_BIND) { if(!params) { /* error */ efree(*outquery); @@ -153,6 +153,6 @@ int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char **ou * tab-width: 4 * c-basic-offset: 4 * End: - * vim600: noet sw=4 ts=4 fdm=marker + * vim600: noet sw=4 ts=4 fdm=marker ft=c * vim<600: noet sw=4 ts=4 */ diff --git a/ext/pdo/pdo_stmt.c b/ext/pdo/pdo_stmt.c index 0ed46571dc..e9bf0b0d01 100755 --- a/ext/pdo/pdo_stmt.c +++ b/ext/pdo/pdo_stmt.c @@ -292,8 +292,10 @@ static PHP_METHOD(PDOStatement, execute) RETURN_FALSE; } if (stmt->methods->executer(stmt TSRMLS_CC)) { - efree(stmt->active_query_string); - stmt->active_query_string = NULL; + if (stmt->active_query_string) { + efree(stmt->active_query_string); + stmt->active_query_string = NULL; + } if (!stmt->executed) { /* this is the first execute */ @@ -312,8 +314,10 @@ static PHP_METHOD(PDOStatement, execute) RETURN_BOOL(ret); } - efree(stmt->active_query_string); - stmt->active_query_string = NULL; + if (stmt->active_query_string) { + efree(stmt->active_query_string); + stmt->active_query_string = NULL; + } RETURN_FALSE; } /* }}} */ diff --git a/ext/pdo/php_pdo.h b/ext/pdo/php_pdo.h index cfa1f2b626..a7fbd90894 100755 --- a/ext/pdo/php_pdo.h +++ b/ext/pdo/php_pdo.h @@ -20,7 +20,6 @@ #ifndef PHP_PDO_H #define PHP_PDO_H -#include "php.h" extern zend_module_entry pdo_module_entry; #define phpext_pdo_ptr &pdo_module_entry