diff options
author | Andrei Zmievski <andrei@php.net> | 2006-04-09 23:35:51 +0000 |
---|---|---|
committer | Andrei Zmievski <andrei@php.net> | 2006-04-09 23:35:51 +0000 |
commit | 06ef71fe3db45fb1cf1c556c537c98924828a4a8 (patch) | |
tree | 03e51036274ea038952e6682340c85dbab0c5e99 /ext/soap/php_encoding.c | |
parent | 1e33c4cc85396bb5aefb0956e19a652aa5cbf757 (diff) | |
download | php-git-06ef71fe3db45fb1cf1c556c537c98924828a4a8.tar.gz |
Speed up SoapClient/SoapServer constructors by caching WSDL structures
in memory. All WSDL files will be cached, unless turned off via an
option to the constructor.
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r-- | ext/soap/php_encoding.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 1d527aab53..683e35ef59 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -3300,3 +3300,17 @@ void delete_encoder(void *encode) } efree(t); } + +void delete_encoder_persistent(void *encode) +{ + encodePtr t = *((encodePtr*)encode); + if (t->details.ns) { + free(t->details.ns); + } + if (t->details.type_str) { + free(t->details.type_str); + } + /* we should never have mapping in persistent encoder */ + assert(t->details.map == NULL); + free(t); +} |