diff options
author | Dmitry Stogov <dmitry@php.net> | 2004-02-06 14:22:33 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2004-02-06 14:22:33 +0000 |
commit | 6ae97a5b250ba87d960c2df4090846ffa8a6551a (patch) | |
tree | 975050dfd1311d6acd18d758e7e3b7c134cca2fb /ext/soap/php_encoding.c | |
parent | 88c1168941e03b7ac0728002bbf0fc39f6c62d20 (diff) | |
download | php-git-6ae97a5b250ba87d960c2df4090846ffa8a6551a.tar.gz |
WSDL cache was disabled by default (see WSDL_CACHE macro)
WSDL related memory leaks were fixed
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r-- | ext/soap/php_encoding.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 3a7f3a243c..69768b67d5 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -2600,13 +2600,28 @@ void delete_encoder(void *encode) { encodePtr t = *((encodePtr*)encode); if (t->details.ns) { - free(t->details.ns); + sdl_free(t->details.ns); } if (t->details.type_str) { - free(t->details.type_str); + sdl_free(t->details.type_str); } if (t->details.map) { delete_mapping(t->details.map); } - free(t); + sdl_free(t); +} + +void delete_tmp_encoder(void *encode) +{ + encodePtr t = *((encodePtr*)encode); + if (t->details.ns) { + efree(t->details.ns); + } + if (t->details.type_str) { + efree(t->details.type_str); + } + if (t->details.map) { + delete_mapping(t->details.map); + } + efree(t); } |