]> granicus.if.org Git - php/commitdiff
Fixed bug #42368 (Incorrect error message displayed by pg_escape_string).
authorIlia Alshanetsky <iliaa@php.net>
Wed, 22 Aug 2007 22:40:29 +0000 (22:40 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Wed, 22 Aug 2007 22:40:29 +0000 (22:40 +0000)
NEWS
ext/pgsql/pgsql.c

diff --git a/NEWS b/NEWS
index f5bc04ee3d5066ee4d76d0d8c3ebe85f07adc8a0..a094eaeb5477c8c466938c92c736cbedb152a1fa 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,10 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 ?? Aug 2007, PHP 5.2.4
+- Fixed bug #42368 (Incorrect error message displayed by pg_escape_string).
+  (Ilia)
 - Fixed bug #42365 (glob() crashes and/or accepts way too many flags). (Jani)
-- Fixed bug #42183 (classmap cause crashr in non-wsdl mode). (Dmitry)
+- Fixed bug #42183 (classmap causes crash in non-wsdl mode). (Dmitry)
 - Fixed bug #42009 (is_a() and is_subclass_of() should NOT call autoload,
   in the same way as "instanceof" operator). (Dmitry)
 - Fixed bug #41904 (proc_open(): empty env array should cause empty
index eadcc1ce147db65c5e76c2836346b3375362de82..508011617a442302a75bf019d713471d398a62e3 100644 (file)
@@ -3571,11 +3571,20 @@ PHP_FUNCTION(pg_escape_string)
        int from_len;
        int id = -1;
 
-       if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "s", &from, &from_len) == SUCCESS) {
-               pgsql_link = NULL;
-               id = PGG(default_link);
-       } else if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &pgsql_link, &from, &from_len) == FAILURE) {
-               return;
+       switch (ZEND_NUM_ARGS()) {
+               case 1:
+                       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &from, &from_len) == FAILURE) {
+                               return;
+                       }
+                       pgsql_link = NULL;
+                       id = PGG(default_link);
+                       break;
+
+               default:
+                       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &pgsql_link, &from, &from_len) == FAILURE) {
+                               return;
+                       }
+                       break;
        }
 
        to = (char *) safe_emalloc(from_len, 2, 1);
@@ -3604,11 +3613,20 @@ PHP_FUNCTION(pg_escape_bytea)
 #endif
        zval *pgsql_link;
 
-       if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "s", &from, &from_len) == SUCCESS) {
-               pgsql_link = NULL;
-               id = PGG(default_link);
-       } else if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &pgsql_link, &from, &from_len) == FAILURE) {
-               return;
+       switch (ZEND_NUM_ARGS()) {
+               case 1:
+                       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &from, &from_len) == FAILURE) {
+                               return;
+                       }
+                       pgsql_link = NULL;
+                       id = PGG(default_link);
+                       break;
+
+               default:
+                       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &pgsql_link, &from, &from_len) == FAILURE) {
+                               return;
+                       }
+                       break;
        }
 
 #ifdef HAVE_PQESCAPE_BYTEA_CONN