edink Tue Jul 5 10:49:23 2005 EDT Modified files: /php-src/ext/pgsql pgsql.c Log: Properly detect when the copy command fails http://cvs.php.net/diff.php/php-src/ext/pgsql/pgsql.c?r1=1.328&r2=1.329&ty=u Index: php-src/ext/pgsql/pgsql.c diff -u php-src/ext/pgsql/pgsql.c:1.328 php-src/ext/pgsql/pgsql.c:1.329 --- php-src/ext/pgsql/pgsql.c:1.328 Tue Jul 5 08:45:39 2005 +++ php-src/ext/pgsql/pgsql.c Tue Jul 5 10:49:22 2005 @@ -20,7 +20,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pgsql.c,v 1.328 2005/07/05 12:45:39 derick Exp $ */ +/* $Id: pgsql.c,v 1.329 2005/07/05 14:49:22 edink Exp $ */ #include <stdlib.h> @@ -3327,6 +3327,7 @@ switch (status) { case PGRES_COPY_IN: if (pgsql_result) { + int command_failed = 0; PQclear(pgsql_result); zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(pg_rows), &pos); #if HAVE_PQPUTCOPYDATA @@ -3373,8 +3374,15 @@ } #endif while ((pgsql_result = PQgetResult(pgsql))) { + if (PGRES_COMMAND_OK != PQresultStatus(pgsql_result)) { + PHP_PQ_ERROR("Copy command failed: %s", pgsql); + command_failed = 1; + } PQclear(pgsql_result); } + if (command_failed) { + RETURN_FALSE; + } } else { PQclear(pgsql_result); RETURN_FALSE;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php