cvs: php4 /ext/pgsql pgsql.c
| From: | Yasuo Ohgaki | Date: | Fri, 19 Apr 2002 13:09:12 +0000 |
| Subject: | cvs: php4 /ext/pgsql pgsql.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-11234@lists.php.net to get a copy of this message | ||
yohgaki Fri Apr 19 09:09:12 2002 EDT
Modified files:
/php4/ext/pgsql pgsql.c
Log:
Fixed pg_insert/update/select/delete overflow.
Index: php4/ext/pgsql/pgsql.c
diff -u php4/ext/pgsql/pgsql.c:1.179 php4/ext/pgsql/pgsql.c:1.180
--- php4/ext/pgsql/pgsql.c:1.179 Fri Apr 19 08:24:14 2002
+++ php4/ext/pgsql/pgsql.c Fri Apr 19 09:09:09 2002
@@ -19,7 +19,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql.c,v 1.179 2002/04/19 12:24:14 yohgaki Exp $ */
+/* $Id: pgsql.c,v 1.180 2002/04/19 13:09:09 yohgaki Exp $ */
#include <stdlib.h>
@@ -3806,13 +3806,13 @@
}
switch(Z_TYPE_PP(val)) {
case IS_STRING:
- values_len += Z_STRLEN_PP(val);
+ values_len += Z_STRLEN_PP(val)+1;
break;
case IS_LONG:
- values_len += MAX_LENGTH_OF_LONG;
+ values_len += MAX_LENGTH_OF_LONG+1;
break;
case IS_DOUBLE:
- values_len += MAX_LENGTH_OF_DOUBLE;
+ values_len += MAX_LENGTH_OF_DOUBLE+1;
break;
default:
if (convert) {
@@ -3922,7 +3922,6 @@
*fields_pos = ',';
fields_pos++;
}
-/* php_log_err(values); */
values_pos--;
*values_pos = '\0';
fields_pos--;
@@ -3931,11 +3930,9 @@
zval_dtor(converted);
FREE_ZVAL(converted);
}
-
sprintf(query, query_tpl, table, fields, values);
efree(fields);
efree(values);
-/* php_log_err(query); */
if (async) {
if (!PQsendQuery(pg_link, query)) {
ret = FAILURE;
@@ -4041,13 +4038,13 @@
}
switch(Z_TYPE_PP(val)) {
case IS_STRING:
- values_len += Z_STRLEN_PP(val);
+ values_len += Z_STRLEN_PP(val)+1;
break;
case IS_LONG:
- values_len += 30;
+ values_len += MAX_LENGTH_OF_LONG+1;
break;
case IS_DOUBLE:
- values_len += 60;
+ values_len += MAX_LENGTH_OF_DOUBLE+1;
break;
default:
php_error(E_NOTICE, "%s() expect scaler values other than null. Need to convert?",
@@ -4086,13 +4083,13 @@
}
switch(Z_TYPE_PP(val)) {
case IS_STRING:
- idsv_len += Z_STRLEN_PP(val);
+ idsv_len += Z_STRLEN_PP(val)+1;
break;
case IS_LONG:
- idsv_len += 30;
+ idsv_len += MAX_LENGTH_OF_LONG+1;
break;
case IS_DOUBLE:
- idsv_len += 60;
+ idsv_len += MAX_LENGTH_OF_DOUBLE+1;
break;
default:
php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?",
@@ -4357,13 +4354,13 @@
}
switch(Z_TYPE_PP(val)) {
case IS_STRING:
- idsv_len += Z_STRLEN_PP(val);
+ idsv_len += Z_STRLEN_PP(val)+1;
break;
case IS_LONG:
- idsv_len += 30;
+ idsv_len += MAX_LENGTH_OF_LONG+1;
break;
case IS_DOUBLE:
- idsv_len += 60;
+ idsv_len += MAX_LENGTH_OF_DOUBLE+1;
break;
default:
php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?",
@@ -4595,13 +4592,13 @@
}
switch(Z_TYPE_PP(val)) {
case IS_STRING:
- idsv_len += Z_STRLEN_PP(val);
+ idsv_len += Z_STRLEN_PP(val)+1;
break;
case IS_LONG:
- idsv_len += 30;
+ idsv_len += MAX_LENGTH_OF_LONG+1;
break;
case IS_DOUBLE:
- idsv_len += 60;
+ idsv_len += MAX_LENGTH_OF_DOUBLE+1;
break;
default:
php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?",