Implement gc handlers
[m6w6/ext-http] / src / php_http_message_body.h
index 92353f7319e48f89daeed35922dd3f02dbc00602..d4115f54a07450ebbe81ef8449e20ddfe29e123a 100644 (file)
@@ -52,15 +52,21 @@ static inline time_t php_http_message_body_mtime(php_http_message_body_t *b)
 
 static inline php_stream *php_http_message_body_stream(php_http_message_body_t *body)
 {
-       return body->res->ptr;
+       return body && body->res ? body->res->ptr : NULL;
+}
+
+static inline zend_resource *php_http_message_body_resource(php_http_message_body_t *body)
+{
+       return body ? body->res : NULL;
 }
 
 typedef struct php_http_message_body_object {
        php_http_message_body_t *body;
+       zval *gc;
        zend_object zo;
 } php_http_message_body_object_t;
 
-PHP_HTTP_API zend_class_entry *php_http_message_body_class_entry;
+PHP_HTTP_API zend_class_entry *php_http_get_message_body_class_entry(void);
 PHP_MINIT_FUNCTION(http_message_body);
 
 zend_object *php_http_message_body_object_new(zend_class_entry *ce);