diff options
author | Sterling Hughes <sterling@php.net> | 2000-07-23 03:45:24 +0000 |
---|---|---|
committer | Sterling Hughes <sterling@php.net> | 2000-07-23 03:45:24 +0000 |
commit | 8aadb68db15f7081ded8a830c353fdd4cdc327a4 (patch) | |
tree | 15ad4f914ccd69e0a8ff611ba2ab1df385332b7e /ext/dbase | |
parent | e67fa9823d24dfeddb58c56ebf6d5e71bcd4ee26 (diff) | |
download | php-git-8aadb68db15f7081ded8a830c353fdd4cdc327a4.tar.gz |
@ Fixed dbase_add_record. (Sterling)
Fixed dbase_add_record
Diffstat (limited to 'ext/dbase')
-rw-r--r-- | ext/dbase/dbase.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/dbase/dbase.c b/ext/dbase/dbase.c index 254cb250d1..adb3e284d2 100644 --- a/ext/dbase/dbase.c +++ b/ext/dbase/dbase.c @@ -274,13 +274,18 @@ PHP_FUNCTION(dbase_add_record) { dbf = dbh->db_fields; for (i = 0, cur_f = dbf; cur_f < &dbf[num_fields]; i++, cur_f++) { + zval tmp; if (zend_hash_index_find(fields->value.ht, i, (void **)&field) == FAILURE) { php_error(E_WARNING, "unexpected error"); efree(cp); RETURN_FALSE; } - convert_to_string(field); - sprintf(t_cp, cur_f->db_format, field->value.str.val); + + tmp = *field; + zval_copy_ctor(&tmp); + convert_to_string(&tmp); + sprintf(t_cp, cur_f->db_format, tmp.value.str.val); + zval_dtor(&tmp); t_cp += cur_f->db_flen; } |