felipe Sat Oct 11 19:03:23 2008 UTC
Modified files: (Branch: PHP_5_3)
/php-src/ext/pdo_pgsql pgsql_statement.c
Log:
- Fixed bug #46249 (pdo_pgsql always fill in NULL for empty BLOB)
- Fixed bug #46274 (pdo_pgsql - Segfault when using
PDO::ATTR_STRINGIFY_FETCHES and blob)
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_pgsql/pgsql_statement.c?r1=1.31.2.12.2.7.2.5&r2=1.31.2.12.2.7.2.6&diff_format=u
Index: php-src/ext/pdo_pgsql/pgsql_statement.c
diff -u php-src/ext/pdo_pgsql/pgsql_statement.c:1.31.2.12.2.7.2.5
php-src/ext/pdo_pgsql/pgsql_statement.c:1.31.2.12.2.7.2.6
--- php-src/ext/pdo_pgsql/pgsql_statement.c:1.31.2.12.2.7.2.5 Tue Feb 26
00:13:57 2008
+++ php-src/ext/pdo_pgsql/pgsql_statement.c Sat Oct 11 19:03:23 2008
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql_statement.c,v 1.31.2.12.2.7.2.5 2008/02/26 00:13:57 iliaa Exp $
*/
+/* $Id: pgsql_statement.c,v 1.31.2.12.2.7.2.6 2008/10/11 19:03:23 felipe Exp $
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -293,10 +293,16 @@
S->param_types[param->paramno] = OIDOID;
return 1;
} else {
+ int len;
+
SEPARATE_ZVAL_IF_NOT_REF(¶m->parameter);
Z_TYPE_P(param->parameter) = IS_STRING;
-
Z_STRLEN_P(param->parameter) = php_stream_copy_to_mem(stm,
-
&Z_STRVAL_P(param->parameter), PHP_STREAM_COPY_ALL, 0);
+
+ if ((len =
php_stream_copy_to_mem(stm, &Z_STRVAL_P(param->parameter), PHP_STREAM_COPY_ALL,
0)) > 0) {
+
Z_STRLEN_P(param->parameter) = len;
+ } else {
+
ZVAL_EMPTY_STRING(param->parameter);
+ }
}
} else {
/* expected a stream
resource */
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php