[PHP-CVS] cvs: php-src(PHP_4_4) /ext/pgsql pgsql.c

2007-01-11 Thread Antony Dovgal
tony2001Thu Jan 11 16:47:32 2007 UTC

  Modified files:  (Branch: PHP_4_4)
/php-src/ext/pgsql  pgsql.c 
  Log:
  MFH
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/pgsql.c?r1=1.244.2.40.2.6&r2=1.244.2.40.2.7&diff_format=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.244.2.40.2.6 
php-src/ext/pgsql/pgsql.c:1.244.2.40.2.7
--- php-src/ext/pgsql/pgsql.c:1.244.2.40.2.6Mon Jan  1 09:46:46 2007
+++ php-src/ext/pgsql/pgsql.c   Thu Jan 11 16:47:32 2007
@@ -19,7 +19,7 @@
+--+
  */
  
-/* $Id: pgsql.c,v 1.244.2.40.2.6 2007/01/01 09:46:46 sebastian Exp $ */
+/* $Id: pgsql.c,v 1.244.2.40.2.7 2007/01/11 16:47:32 tony2001 Exp $ */
 
 #include 
 
@@ -216,7 +216,7 @@
 
 static int le_link, le_plink, le_result, le_lofp, le_string;
 
-ZEND_DECLARE_MODULE_GLOBALS(pgsql);
+ZEND_DECLARE_MODULE_GLOBALS(pgsql)
 
 /* {{{ _php_pgsql_trim_message */
 static char * _php_pgsql_trim_message(const char *message, int *len)
@@ -2658,10 +2658,11 @@

zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(pg_rows), &pos);
while 
(zend_hash_get_current_data_ex(Z_ARRVAL_P(pg_rows), (void **) &tmp, &pos) == 
SUCCESS) {
convert_to_string_ex(tmp);
-   query = (char 
*)emalloc(Z_STRLEN_PP(tmp) +2);
-   strcpy(query, Z_STRVAL_PP(tmp));
-   if(*(query+Z_STRLEN_PP(tmp)-1) != '\n')
-   strcat(query, "\n");
+   query = (char 
*)emalloc(Z_STRLEN_PP(tmp) + 2);
+   strlcpy(query, Z_STRVAL_PP(tmp), 
Z_STRLEN_PP(tmp) + 2);
+   if(Z_STRLEN_PP(tmp) > 0 && *(query + 
Z_STRLEN_PP(tmp) - 1) != '\n') {
+   strlcat(query, "\n", 
Z_STRLEN_PP(tmp) + 2);
+   }
if (PQputline(pgsql, query)) {
efree(query);
PHP_PQ_ERROR("copy failed: %s", 
pgsql);

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



[PHP-CVS] cvs: php-src(PHP_4_4) /ext/pgsql pgsql.c

2006-12-28 Thread Ilia Alshanetsky
iliaa   Thu Dec 28 15:21:41 2006 UTC

  Modified files:  (Branch: PHP_4_4)
/php-src/ext/pgsql  pgsql.c 
  Log:
  
  MFH: Added buffer length checks
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/pgsql.c?r1=1.244.2.40.2.3&r2=1.244.2.40.2.4&diff_format=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.244.2.40.2.3 
php-src/ext/pgsql/pgsql.c:1.244.2.40.2.4
--- php-src/ext/pgsql/pgsql.c:1.244.2.40.2.3Sun Jan  1 13:46:56 2006
+++ php-src/ext/pgsql/pgsql.c   Thu Dec 28 15:21:41 2006
@@ -19,7 +19,7 @@
+--+
  */
  
-/* $Id: pgsql.c,v 1.244.2.40.2.3 2006/01/01 13:46:56 sniper Exp $ */
+/* $Id: pgsql.c,v 1.244.2.40.2.4 2006/12/28 15:21:41 iliaa Exp $ */
 
 #include 
 
@@ -4285,7 +4285,7 @@
smart_str_append_long(querystr, Z_LVAL_PP(val));
break;
case IS_DOUBLE:
-   smart_str_appendl(querystr, buf, sprintf(buf, 
"%f", Z_DVAL_PP(val)));
+   smart_str_appendl(querystr, buf, 
MIN(snprintf(buf, sizeof(buf), "%f", Z_DVAL_PP(val)), sizeof(buf)-1));
break;
default:
/* should not happen */

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



[PHP-CVS] cvs: php-src(PHP_4_4) /ext/pgsql pgsql.c /ext/pgsql/tests 80_bug32223b.phpt

2005-11-07 Thread Marcus Boerger
helly   Mon Nov  7 08:01:37 2005 EDT

  Added files: (Branch: PHP_4_4)
/php-src/ext/pgsql/tests80_bug32223b.phpt 

  Modified files:  
/php-src/ext/pgsql  pgsql.c 
  Log:
  - MFH Fix Bug #32223 weird behaviour of pg_last_notice 
  
  
http://cvs.php.net/diff.php/php-src/ext/pgsql/pgsql.c?r1=1.244.2.40.2.1&r2=1.244.2.40.2.2&ty=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.244.2.40.2.1 
php-src/ext/pgsql/pgsql.c:1.244.2.40.2.2
--- php-src/ext/pgsql/pgsql.c:1.244.2.40.2.1Tue Jul  5 08:50:03 2005
+++ php-src/ext/pgsql/pgsql.c   Mon Nov  7 08:01:36 2005
@@ -19,7 +19,7 @@
+--+
  */
  
-/* $Id: pgsql.c,v 1.244.2.40.2.1 2005/07/05 12:50:03 derick Exp $ */
+/* $Id: pgsql.c,v 1.244.2.40.2.2 2005/11/07 13:01:36 helly Exp $ */
 
 #include 
 
@@ -310,7 +310,7 @@
if (PGG(log_notices)) {
php_error_docref(NULL TSRMLS_CC, E_NOTICE, "%s", 
notice->message);
}
-   zend_hash_index_update(&PGG(notices), *(int *)resource_id, 
(void **)¬ice, sizeof(php_pgsql_notice *), NULL);
+   zend_hash_index_update(&PGG(notices), (int)resource_id, (void 
**)¬ice, sizeof(php_pgsql_notice *), NULL);
}
 }
 /* }}} */
@@ -694,7 +694,7 @@
}
/* set notice processer */
if (! PGG(ignore_notices) && Z_TYPE_P(return_value) == IS_RESOURCE) {
-   PQsetNoticeProcessor(pgsql, _php_pgsql_notice_handler, (void 
*)&Z_RESVAL_P(return_value));
+   PQsetNoticeProcessor(pgsql, _php_pgsql_notice_handler, (void 
*)Z_RESVAL_P(return_value));
}
php_pgsql_set_default_link(Z_LVAL_P(return_value) TSRMLS_CC);


http://cvs.php.net/co.php/php-src/ext/pgsql/tests/80_bug32223b.phpt?r=1.1&p=1
Index: php-src/ext/pgsql/tests/80_bug32223b.phpt
+++ php-src/ext/pgsql/tests/80_bug32223b.phpt
--TEST--
Bug #32223 (weird behaviour of pg_last_notice using define)
--SKIPIF--

--FILE--

===DONE===
--EXPECTF--
array(1) {
  [0]=>
  string(1) "f"
}
string(14) "NOTICE:  1"
===DONE===

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