cvs: php4 /ext/pgsql pgsql.c

From: Date: Sat, 20 Apr 2002 02:31:48 +0000
Subject: cvs: php4 /ext/pgsql pgsql.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-11251@lists.php.net to get a copy of this message
yohgaki Fri Apr 19 22:31:48 2002 EDT Modified files: /php4/ext/pgsql pgsql.c Log: Remove warnings. Fixed OID overflow bug. Fixed type convertion bug. # Thank you Edin. Index: php4/ext/pgsql/pgsql.c diff -u php4/ext/pgsql/pgsql.c:1.180 php4/ext/pgsql/pgsql.c:1.181 --- php4/ext/pgsql/pgsql.c:1.180 Fri Apr 19 09:09:09 2002 +++ php4/ext/pgsql/pgsql.c Fri Apr 19 22:31:48 2002 @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pgsql.c,v 1.180 2002/04/19 13:09:09 yohgaki Exp $ */ +/* $Id: pgsql.c,v 1.181 2002/04/20 02:31:48 yohgaki Exp $ */ #include <stdlib.h> @@ -1041,7 +1041,7 @@ char *ret=NULL; /* try to lookup the type in the resource list */ - snprintf(hashed_oid_key,31,"pgsql_oid_%d",(int) oid); + snprintf(hashed_oid_key,31,"pgsql_oid_%l", oid); hashed_oid_key[31]=0; if (zend_hash_find(list,hashed_oid_key,strlen(hashed_oid_key)+1,(void **) &field_type)==SUCCESS) { @@ -1049,7 +1049,7 @@ } else { /* hash all oid's */ int i,num_rows; int oid_offset,name_offset; - char *tmp_oid, *tmp_name; + char *tmp_oid, *end_ptr, *tmp_name; list_entry new_oid_entry; if ((result = PQexec(pgsql,"select oid,typname from pg_type")) == NULL) { @@ -1070,7 +1070,7 @@ Z_TYPE(new_oid_entry) = le_string; new_oid_entry.ptr = estrdup(tmp_name); zend_hash_update(list,hashed_oid_key,strlen(hashed_oid_key)+1,(void *) &new_oid_entry, sizeof(list_entry), NULL); - if (!ret && atoi(tmp_oid)==oid) { + if (!ret && strtoul(tmp_oid, &end_ptr, 10)==oid) { ret = estrdup(tmp_name); } } @@ -3193,7 +3193,7 @@ break; case IS_LONG: - ZVAL_LONG(new_val, Z_DVAL_PP(val)); + ZVAL_LONG(new_val, Z_LVAL_PP(val)); break; case IS_DOUBLE: @@ -3758,8 +3758,8 @@ } /* }}} */ -#define MAX_LENGTH_OF_LONG 30 -#define MAX_LENGTH_OF_DOUBLE 60 +#define PGSQL_MAX_LENGTH_OF_LONG 30 +#define PGSQL_MAX_LENGTH_OF_DOUBLE 60 /* {{{ php_pgsql_insert */ @@ -3809,10 +3809,10 @@ values_len += Z_STRLEN_PP(val)+1; break; case IS_LONG: - values_len += MAX_LENGTH_OF_LONG+1; + values_len += PGSQL_MAX_LENGTH_OF_LONG+1; break; case IS_DOUBLE: - values_len += MAX_LENGTH_OF_DOUBLE+1; + values_len += PGSQL_MAX_LENGTH_OF_DOUBLE+1; break; default: if (convert) { @@ -4041,10 +4041,10 @@ values_len += Z_STRLEN_PP(val)+1; break; case IS_LONG: - values_len += MAX_LENGTH_OF_LONG+1; + values_len += PGSQL_MAX_LENGTH_OF_LONG+1; break; case IS_DOUBLE: - values_len += MAX_LENGTH_OF_DOUBLE+1; + values_len += PGSQL_MAX_LENGTH_OF_DOUBLE+1; break; default: php_error(E_NOTICE, "%s() expect scaler values other than null. Need to convert?", @@ -4086,10 +4086,10 @@ idsv_len += Z_STRLEN_PP(val)+1; break; case IS_LONG: - idsv_len += MAX_LENGTH_OF_LONG+1; + idsv_len += PGSQL_MAX_LENGTH_OF_LONG+1; break; case IS_DOUBLE: - idsv_len += MAX_LENGTH_OF_DOUBLE+1; + idsv_len += PGSQL_MAX_LENGTH_OF_DOUBLE+1; break; default: php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?", @@ -4357,10 +4357,10 @@ idsv_len += Z_STRLEN_PP(val)+1; break; case IS_LONG: - idsv_len += MAX_LENGTH_OF_LONG+1; + idsv_len += PGSQL_MAX_LENGTH_OF_LONG+1; break; case IS_DOUBLE: - idsv_len += MAX_LENGTH_OF_DOUBLE+1; + idsv_len += PGSQL_MAX_LENGTH_OF_DOUBLE+1; break; default: php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?", @@ -4512,7 +4512,8 @@ zval *row; char *field_name, *element, *data; size_t num_fields, element_len, data_len; - int pg_numrows, pg_row, i; + int pg_numrows, pg_row; + uint i; assert(Z_TYPE_P(ret_array) == IS_ARRAY); if ((pg_numrows = PQntuples(pg_result)) <= 0) { @@ -4595,10 +4596,10 @@ idsv_len += Z_STRLEN_PP(val)+1; break; case IS_LONG: - idsv_len += MAX_LENGTH_OF_LONG+1; + idsv_len += PGSQL_MAX_LENGTH_OF_LONG+1; break; case IS_DOUBLE: - idsv_len += MAX_LENGTH_OF_DOUBLE+1; + idsv_len += PGSQL_MAX_LENGTH_OF_DOUBLE+1; break; default: php_error(E_NOTICE, "%s() expects scaler values other than null. Need to convert?",

« previous php.cvs (#11251) next »