com php-src: fix zend_hash_get_current_data_ptr_ex call: ext/pdo/pdo_sql_parser.re
| From: | Pierre Joye | Date: | Sat, 17 May 2014 03:41:21 +0000 |
| Subject: | com php-src: fix zend_hash_get_current_data_ptr_ex call: ext/pdo/pdo_sql_parser.re | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-78421@lists.php.net to get a copy of this message | ||
Commit: 9b44d687df22761433496c72bad56b8bce3d1978
Author: Pierre Joye <pierre.php@gmail.com> Sat, 17 May 2014 05:41:21 +0200
Parents: 06fe7e1e153381d08478f2cbe26a2296c280b2a0
Branches: phpng
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=9b44d687df22761433496c72bad56b8bce3d1978
Log:
fix zend_hash_get_current_data_ptr_ex call
Changed paths:
M ext/pdo/pdo_sql_parser.re
Diff:
diff --git a/ext/pdo/pdo_sql_parser.re b/ext/pdo/pdo_sql_parser.re
index 48d80e2..a1742e3 100644
--- a/ext/pdo/pdo_sql_parser.re
+++ b/ext/pdo/pdo_sql_parser.re
@@ -422,8 +422,9 @@ int old_pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char
padding = 3;
}
if(params) {
+ HashPosition *param_pos;
zend_hash_internal_pointer_reset(params);
- while (SUCCESS == zend_hash_get_current_data(params, (void**)¶m)) {
+ while ((param == zend_hash_get_current_data_ptr_ex(params, ¶m_pos)) != NULL) {
if(param->parameter) {
convert_to_string(param->parameter);
/* accommodate a string that needs to be fully quoted
@@ -455,9 +456,9 @@ int old_pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char
}
/* lookup bind first via hash and then index */
/* stupid keys need to be null-terminated, even though we know their length */
- if((SUCCESS == zend_hash_find(params, s.tok, s.cur-s.tok,(void **)¶m))
+ if((NULL != zend_hash_find(params, s.tok, s.cur-s.tok,(void **)¶m))
||
- (SUCCESS == zend_hash_index_find(params, bindno, (void **)¶m)))
+ (NULL != zend_hash_index_find(params, bindno, (void **)¶m)))
{
char *quotedstr;
int quotedstrlen;
@@ -494,7 +495,7 @@ int old_pdo_parse_params(pdo_stmt_t *stmt, char *inquery, int inquery_len, char
return (int) (s.cur - inquery);
}
/* lookup bind by index */
- if(SUCCESS == zend_hash_index_find(params, bindno, (void **)¶m))
+ if(NULL != zend_hash_index_find(params, bindno, (void **)¶m))
{
char *quotedstr;
int quotedstrlen;