diff options
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); } |