]> granicus.if.org Git - php/commitdiff
- Don't free soap_headers just before comparing the length. This causes SoapClient..
authorPierre Joye <pajoye@php.net>
Wed, 3 Feb 2010 20:29:09 +0000 (20:29 +0000)
committerPierre Joye <pajoye@php.net>
Wed, 3 Feb 2010 20:29:09 +0000 (20:29 +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);