+
+PHP_HTTP_API void _http_message_dtor(http_message *message)
+{
+ if (message) {
+ zend_hash_destroy(&message->hdrs);
+ phpstr_dtor(PHPSTR(message));
+ if (message->raw) {
+ efree(message->raw);
+ message->raw = NULL;
+ }
+ if (message->type == HTTP_MSG_REQUEST) {
+ if (message->info.request.method) {
+ efree(message->info.request.method);
+ message->info.request.method = NULL;
+ }
+ if (message->info.request.URI) {
+ efree(message->info.request.URI);
+ message->info.request.URI = NULL;
+ }
+ }
+ }
+}
+
+PHP_HTTP_API void _http_message_free(http_message *message)
+{
+ if (message) {
+ if (message->nested) {
+ http_message_free(message->nested);
+ }
+ http_message_dtor(message);
+ efree(message);
+ }
+}
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
+ */
+