]> granicus.if.org Git - php/commitdiff
Don't free soap_headers just before comparing the length. This causes SoapClient...
authorFrank M. Kromann <fmk@php.net>
Wed, 13 Jan 2010 05:32:02 +0000 (05:32 +0000)
committerFrank M. Kromann <fmk@php.net>
Wed, 13 Jan 2010 05:32:02 +0000 (05:32 +0000)
ext/soap/php_http.c

index 23432f511da77b391207a42ccba701e86835871b..6257e791517ce7f0638a6413cf67563e49594c52 100644 (file)
@@ -759,7 +759,6 @@ try_again:
                smart_str_0(&soap_headers);
 
                err = php_stream_write(stream, soap_headers.c, soap_headers.len);
-               smart_str_free(&soap_headers);
                if (err != soap_headers.len) {
                        if (request != buf) {efree(request);}
                        php_stream_close(stream);
@@ -770,6 +769,7 @@ try_again:
                        smart_str_free(&soap_headers_z);
                        return FALSE;
                }
+               smart_str_free(&soap_headers);
        } else {
                add_soap_fault(this_ptr, "HTTP", "Failed to create stream??", NULL, NULL TSRMLS_CC);
                smart_str_free(&soap_headers_z);