diff options
| author | Ilia Alshanetsky <iliaa@php.net> | 2002-11-19 19:55:54 +0000 |
|---|---|---|
| committer | Ilia Alshanetsky <iliaa@php.net> | 2002-11-19 19:55:54 +0000 |
| commit | 11e7f6278d3365fb6cd8a4caa393e856b54e9f5a (patch) | |
| tree | 2a094fcf81e80663911acce55b77fcbf328ad140 /ext/gd/gdcache.c | |
| parent | 010fd97aa52214e5dce5a10e12e063c2f835b516 (diff) | |
| download | php-git-11e7f6278d3365fb6cd8a4caa393e856b54e9f5a.tar.gz | |
Addressed the issue of persistant allocation.
Fixed bug #20470.
Fixed a memory leak in gdttf.c that would happen when an error during
processing occures.
Diffstat (limited to 'ext/gd/gdcache.c')
| -rw-r--r-- | ext/gd/gdcache.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/gd/gdcache.c b/ext/gd/gdcache.c index 7791d1bbf5..55ad98ff67 100644 --- a/ext/gd/gdcache.c +++ b/ext/gd/gdcache.c @@ -61,7 +61,7 @@ gdCacheCreate( { gdCache_head_t *head; - head = (gdCache_head_t *)malloc(sizeof(gdCache_head_t)); + head = (gdCache_head_t *)pemalloc(sizeof(gdCache_head_t), 1); head->mru = NULL; head->size = size; head->gdCacheTest = gdCacheTest; @@ -80,9 +80,9 @@ gdCacheDelete( gdCache_head_t *head ) (*(head->gdCacheRelease))(elem->userdata); prev = elem; elem = elem->next; - free((char *)prev); + pefree((char *)prev, 1); } - free((char *)head); + pefree((char *)head, 1); } void * @@ -114,7 +114,7 @@ gdCacheGet( gdCache_head_t *head, void *keydata ) return NULL; } if (i < head->size) { /* cache still growing - add new elem */ - elem = (gdCache_element_t *)malloc(sizeof(gdCache_element_t)); + elem = (gdCache_element_t *)pemalloc(sizeof(gdCache_element_t), 1); } else { /* cache full - replace least-recently-used */ /* preveprev becomes new end of list */ |
