iliaa           Fri Dec 29 00:34:30 2006 UTC

  Added files:                 (Branch: PHP_5_2)
    /php-src/ext/pgsql/tests    80_bug39971.phpt 

  Modified files:              
    /php-src    NEWS 
    /php-src/ext/pgsql  pgsql.c 
  Log:
  
  Fixed bug #39971 (pg_insert/pg_update do not allow now() to be used for   
  timestamp fields).
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.463&r2=1.2027.2.547.2.464&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.463 php-src/NEWS:1.2027.2.547.2.464
--- php-src/NEWS:1.2027.2.547.2.463     Tue Dec 26 16:55:56 2006
+++ php-src/NEWS        Fri Dec 29 00:34:29 2006
@@ -17,6 +17,8 @@
   __inet_pton() and inet_ntop() was named __inet_ntop(). (Hannes)
 - Fixed the validate email filter so that the letter "v" can also be used in
   the user part of the email address. (Derick)
+- Fixed bug #39971 (pg_insert/pg_update do not allow now() to be used for
+  timestamp fields). (Ilia)
 - Fixed bug #39952 (zip ignoring --with-libdir on zlib checks) (judas dot
   iscariote at gmail dot com)
 - Fixed bug #39944 (References broken). (Dmitry)
http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/pgsql.c?r1=1.331.2.13.2.13&r2=1.331.2.13.2.14&diff_format=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.331.2.13.2.13 
php-src/ext/pgsql/pgsql.c:1.331.2.13.2.14
--- php-src/ext/pgsql/pgsql.c:1.331.2.13.2.13   Thu Dec 28 15:21:21 2006
+++ php-src/ext/pgsql/pgsql.c   Fri Dec 29 00:34:29 2006
@@ -20,7 +20,7 @@
    +----------------------------------------------------------------------+
  */
  
-/* $Id: pgsql.c,v 1.331.2.13.2.13 2006/12/28 15:21:21 iliaa Exp $ */
+/* $Id: pgsql.c,v 1.331.2.13.2.14 2006/12/29 00:34:29 iliaa Exp $ */
 
 #include <stdlib.h>
 
@@ -4968,14 +4968,14 @@
                                switch(Z_TYPE_PP(val)) {
                                        case IS_STRING:
                                                if (Z_STRLEN_PP(val) == 0) {
-                                                       ZVAL_STRING(new_val, 
"NULL", 1);
-                                               }
-                                               else {
+                                                       ZVAL_STRINGL(new_val, 
"NULL", sizeof("NULL")-1, 1);
+                                               } else if 
(!strcasecmp(Z_STRVAL_PP(val), "now()")) {
+                                                       ZVAL_STRINGL(new_val, 
"NOW()", sizeof("NOW()")-1, 1);
+                                               } else {
                                                        /* FIXME: better regex 
must be used */
                                                        if 
(php_pgsql_convert_match(Z_STRVAL_PP(val), 
"^([0-9]{4}[/-][0-9]{1,2}[/-][0-9]{1,2})([ 
\\t]+(([0-9]{1,2}:[0-9]{1,2}){1}(:[0-9]{1,2}){0,1}(\\.[0-9]+){0,1}([ 
\\t]*([+-][0-9]{1,2}(:[0-9]{1,2}){0,1}|[a-zA-Z]{1,5})){0,1})){0,1}$", 1 
TSRMLS_CC) == FAILURE) {
                                                                err = 1;
-                                                       }
-                                                       else {
+                                                       } else {
                                                                
ZVAL_STRING(new_val, Z_STRVAL_PP(val), 1);
                                                                
php_pgsql_add_quotes(new_val, 1 TSRMLS_CC);
                                                        }
@@ -4983,7 +4983,7 @@
                                                break;
                                
                                        case IS_NULL:
-                                               ZVAL_STRING(new_val, "NULL", 1);
+                                               ZVAL_STRINGL(new_val, "NULL", 
sizeof("NULL")-1, 1);
                                                break;
 
                                        default:

http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/tests/80_bug39971.phpt?view=markup&rev=1.1
Index: php-src/ext/pgsql/tests/80_bug39971.phpt
+++ php-src/ext/pgsql/tests/80_bug39971.phpt

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to