From: Marcus Boerger Date: Wed, 26 Feb 2003 22:03:00 +0000 (+0000) Subject: if skip param of dba_fetch is -1 stop do not restart search after last element X-Git-Tag: RELEASE_0_5~733 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6fd9c32346b7a35dbb237c0dcd775265c384b245;p=php if skip param of dba_fetch is -1 stop do not restart search after last element --- diff --git a/ext/dba/libinifile/inifile.c b/ext/dba/libinifile/inifile.c index 406798302e..2a50c9e884 100644 --- a/ext/dba/libinifile/inifile.c +++ b/ext/dba/libinifile/inifile.c @@ -261,8 +261,8 @@ val_type inifile_fetch(inifile *dba, const key_type *key, int skip TSRMLS_DC) { /* specific instance or not same key -> restart search */ /* the slow way: restart and seacrch */ php_stream_rewind(dba->fp); + inifile_line_free(&dba->next); } - inifile_line_free(&dba->next); if (skip == -1) { skip = 0; } @@ -273,7 +273,7 @@ val_type inifile_fetch(inifile *dba, const key_type *key, int skip TSRMLS_DC) { /* allow faster access by updating key read into next */ inifile_line_free(&dba->next); dba->next = ln; - dba->next.pos = php_stream_tell(dba->fp);; + dba->next.pos = php_stream_tell(dba->fp); return val; } skip--; @@ -285,7 +285,7 @@ val_type inifile_fetch(inifile *dba, const key_type *key, int skip TSRMLS_DC) { } } inifile_line_free(&ln); - inifile_line_free(&dba->next); + dba->next.pos = php_stream_tell(dba->fp); return ln.val; } /* }}} */