edink Sat Sep 3 19:50:26 2005 EDT
Modified files: (Branch: PHP_5_1)
/php-src/ext/pdo_pgsql pgsql_statement.c
Log:
Don't crash on invalid parameter #34203 (Wez)
http://cvs.php.net/diff.php/php-src/ext/pdo_pgsql/pgsql_statement.c?r1=1.31&r2=1.31.2.1&ty=u
Index: php-src/ext/pdo_pgsql/pgsql_statement.c
diff -u php-src/ext/pdo_pgsql/pgsql_statement.c:1.31
php-src/ext/pdo_pgsql/pgsql_statement.c:1.31.2.1
--- php-src/ext/pdo_pgsql/pgsql_statement.c:1.31 Wed Aug 3 10:07:39 2005
+++ php-src/ext/pdo_pgsql/pgsql_statement.c Sat Sep 3 19:50:25 2005
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql_statement.c,v 1.31 2005/08/03 14:07:39 sniper Exp $ */
+/* $Id: pgsql_statement.c,v 1.31.2.1 2005/09/03 23:50:25 edink Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -198,15 +198,17 @@
sizeof(int));
}
- if (PDO_PARAM_TYPE(param->param_type) ==
PDO_PARAM_NULL ||
- Z_TYPE_P(param->parameter) ==
IS_NULL) {
- S->param_values[param->paramno] = NULL;
- S->param_lengths[param->paramno] = 0;
- } else {
- convert_to_string(param->parameter);
- S->param_values[param->paramno] =
Z_STRVAL_P(param->parameter);
- S->param_lengths[param->paramno] =
Z_STRLEN_P(param->parameter);
- S->param_formats[param->paramno] = 1;
+ if (param->paramno >= 0) {
+ if (PDO_PARAM_TYPE(param->param_type)
== PDO_PARAM_NULL ||
+
Z_TYPE_P(param->parameter) == IS_NULL) {
+ S->param_values[param->paramno]
= NULL;
+
S->param_lengths[param->paramno] = 0;
+ } else {
+
convert_to_string(param->parameter);
+ S->param_values[param->paramno]
= Z_STRVAL_P(param->parameter);
+
S->param_lengths[param->paramno] = Z_STRLEN_P(param->parameter);
+
S->param_formats[param->paramno] = 1;
+ }
}
break;
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php