Skip to content

Commit c796220

Browse files
committed
Fix stream leak in phar cache_list
1 parent 74a7d00 commit c796220

File tree

3 files changed

+3
-3
lines changed

3 files changed

+3
-3
lines changed

Zend/zend_list.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ void plist_entry_destructor(zval *zv)
206206
free(res);
207207
}
208208

209-
int zend_init_rsrc_list(void)
209+
ZEND_API int zend_init_rsrc_list(void)
210210
{
211211
zend_hash_init(&EG(regular_list), 8, NULL, list_entry_destructor, 0);
212212
return SUCCESS;

Zend/zend_list.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ void list_entry_destructor(zval *ptr);
4545
void plist_entry_destructor(zval *ptr);
4646

4747
void zend_clean_module_rsrc_dtors(int module_number);
48-
int zend_init_rsrc_list(void);
48+
ZEND_API int zend_init_rsrc_list(void); /* Exported for phar hack */
4949
int zend_init_rsrc_plist(void);
5050
void zend_close_rsrc_list(HashTable *ht);
5151
void zend_destroy_rsrc_list(HashTable *ht);

ext/phar/phar.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ static void phar_split_cache_list(void) /* {{{ */
113113

114114
/* fake request startup */
115115
PHAR_G(request_init) = 1;
116-
zend_hash_init(&EG(regular_list), 0, NULL, NULL, 0);
116+
zend_init_rsrc_list();
117117
EG(regular_list).nNextFreeElement=1; /* we don't want resource id 0 */
118118

119119
PHAR_G(has_bz2) = zend_hash_str_exists(&module_registry, "bz2", sizeof("bz2")-1);

0 commit comments

Comments
 (0)