diff options
-rw-r--r-- | ext/sybase/sybase.c | 5 | ||||
-rw-r--r-- | ext/sybase_ct/php_sybase_ct.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/ext/sybase/sybase.c b/ext/sybase/sybase.c index afc0239b53..0ba854679e 100644 --- a/ext/sybase/sybase.c +++ b/ext/sybase/sybase.c @@ -927,9 +927,10 @@ static PHP_FUNCTION(sybase_fetch_hash) for (i=0; i<result->num_fields; i++) { MAKE_STD_ZVAL(tmp); *tmp = result->data[result->cur_row][i]; - pval_copy_constructor(tmp); if (PG(magic_quotes_runtime) && tmp->type == IS_STRING) { - tmp->value.str.val = php_addslashes(tmp->value.str.val,tmp->value.str.len,&tmp->value.str.len,1); + tmp->value.str.val = php_addslashes(tmp->value.str.val,tmp->value.str.len,&tmp->value.str.len,0); + } else { + pval_copy_constructor(tmp); } zend_hash_index_update(return_value->value.ht, i, (void *) &tmp, sizeof(pval *), NULL); tmp->refcount++; diff --git a/ext/sybase_ct/php_sybase_ct.c b/ext/sybase_ct/php_sybase_ct.c index a3ca635803..6f98daa86e 100644 --- a/ext/sybase_ct/php_sybase_ct.c +++ b/ext/sybase_ct/php_sybase_ct.c @@ -1260,9 +1260,10 @@ static void php_sybase_fetch_hash(INTERNAL_FUNCTION_PARAMETERS) tmp = (pval *) emalloc(sizeof(pval)); *tmp = result->data[result->cur_row][i]; INIT_PZVAL(tmp); - pval_copy_constructor(tmp); if (PG(magic_quotes_runtime) && tmp->type == IS_STRING) { - tmp->value.str.val = php_addslashes(tmp->value.str.val,tmp->value.str.len,&tmp->value.str.len,1); + tmp->value.str.val = php_addslashes(tmp->value.str.val,tmp->value.str.len,&tmp->value.str.len,0); + } else { + pval_copy_constructor(tmp); } zend_hash_index_update(return_value->value.ht, i, (void *) &tmp, sizeof(pval *), NULL); tmp->refcount++; |