Skip to content

Commit 900751e

Browse files
committed
Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3: Update generated file. Ensure the SQL parser is regenerated after changes.
2 parents 56d8d35 + e946eac commit 900751e

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

ext/pdo/Makefile.frag

+4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ PDO_HEADER_FILES= \
44
php_pdo.h \
55
php_pdo_driver.h
66

7+
8+
$(srcdir)/pdo_sql_parser.c: $(srcdir)/pdo_sql_parser.re
9+
(cd $(top_srcdir); $(RE2C) -o ext/pdo/pdo_sql_parser.c ext/pdo/pdo_sql_parser.re)
10+
711
install-pdo-headers:
812
@echo "Installing PDO headers: $(INSTALL_ROOT)$(phpincludedir)/ext/pdo/"
913
@$(mkinstalldirs) $(INSTALL_ROOT)$(phpincludedir)/ext/pdo

ext/pdo/pdo_sql_parser.c

+6-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* Generated by re2c 0.13.5 on Sat Jun 4 18:42:25 2011 */
1+
/* Generated by re2c 0.13.5 on Wed Apr 18 22:30:06 2012 */
22
#line 1 "ext/pdo/pdo_sql_parser.re"
33
/*
44
+----------------------------------------------------------------------+
@@ -569,7 +569,7 @@ PDO_API int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len,
569569
param->param_type TSRMLS_CC)) {
570570
/* bork */
571571
ret = -1;
572-
strcpy(stmt->error_code, stmt->dbh->error_code);
572+
strncpy(stmt->error_code, stmt->dbh->error_code, 6);
573573
if (buf) {
574574
efree(buf);
575575
}
@@ -592,6 +592,9 @@ PDO_API int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len,
592592
plc->freeq = 0;
593593
break;
594594

595+
case IS_BOOL:
596+
convert_to_long(param->parameter);
597+
595598
case IS_LONG:
596599
case IS_DOUBLE:
597600
convert_to_string(param->parameter);
@@ -600,16 +603,14 @@ PDO_API int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len,
600603
plc->freeq = 0;
601604
break;
602605

603-
case IS_BOOL:
604-
convert_to_long(param->parameter);
605606
default:
606607
convert_to_string(param->parameter);
607608
if (!stmt->dbh->methods->quoter(stmt->dbh, Z_STRVAL_P(param->parameter),
608609
Z_STRLEN_P(param->parameter), &plc->quoted, &plc->qlen,
609610
param->param_type TSRMLS_CC)) {
610611
/* bork */
611612
ret = -1;
612-
strcpy(stmt->error_code, stmt->dbh->error_code);
613+
strncpy(stmt->error_code, stmt->dbh->error_code, 6);
613614
goto clean_up;
614615
}
615616
plc->freeq = 1;

0 commit comments

Comments
 (0)