- add HTTP_URL_STRIP_ALL constant
[m6w6/ext-http] / http_requestpool_object.c
index fed57219ac4ae05d98dce1c773f126f7236182fd..ddef31867fb2ee55bea053805b5dbf1c80b95d78 100644 (file)
@@ -67,9 +67,6 @@ HTTP_EMPTY_ARGS(count);
 HTTP_EMPTY_ARGS(getAttachedRequests);
 HTTP_EMPTY_ARGS(getFinishedRequests);
 
-#define http_requestpool_object_declare_default_properties() _http_requestpool_object_declare_default_properties(TSRMLS_C)
-static inline void _http_requestpool_object_declare_default_properties(TSRMLS_D);
-
 zend_class_entry *http_requestpool_object_ce;
 zend_function_entry http_requestpool_object_fe[] = {
        HTTP_REQPOOL_ME(__construct, ZEND_ACC_PUBLIC|ZEND_ACC_CTOR)
@@ -102,13 +99,14 @@ static zend_object_handlers http_requestpool_object_handlers;
 PHP_MINIT_FUNCTION(http_requestpool_object)
 {
        HTTP_REGISTER_CLASS_EX(HttpRequestPool, http_requestpool_object, NULL, 0);
+       http_requestpool_object_handlers.clone_obj = NULL;
+       
 #if defined(HAVE_SPL) && !defined(WONKY)
        zend_class_implements(http_requestpool_object_ce TSRMLS_CC, 2, spl_ce_Countable, zend_ce_iterator);
 #else
        zend_class_implements(http_requestpool_object_ce TSRMLS_CC, 1, zend_ce_iterator);
 #endif
-
-       http_requestpool_object_handlers.clone_obj = NULL;
+       
        return SUCCESS;
 }
 
@@ -123,7 +121,7 @@ zend_object_value _http_requestpool_object_new(zend_class_entry *ce TSRMLS_DC)
        http_request_pool_init(&o->pool);
 
        ALLOC_HASHTABLE(OBJ_PROP(o));
-       zend_hash_init(OBJ_PROP(o), 0, NULL, ZVAL_PTR_DTOR, 0);
+       zend_hash_init(OBJ_PROP(o), zend_hash_num_elements(&ce->default_properties), NULL, ZVAL_PTR_DTOR, 0);
        zend_hash_copy(OBJ_PROP(o), &ce->default_properties, (copy_ctor_func_t) zval_add_ref, NULL, sizeof(zval *));
 
        ov.handle = putObject(http_requestpool_object, o);
@@ -132,13 +130,6 @@ zend_object_value _http_requestpool_object_new(zend_class_entry *ce TSRMLS_DC)
        return ov;
 }
 
-static inline void _http_requestpool_object_declare_default_properties(TSRMLS_D)
-{
-       zend_class_entry *ce = http_requestpool_object_ce;
-
-       DCL_PROP_N(PROTECTED, pool);
-}
-
 void _http_requestpool_object_free(zend_object *object TSRMLS_DC)
 {
        http_requestpool_object *o = (http_requestpool_object *) object;
@@ -400,7 +391,7 @@ PHP_METHOD(HttpRequestPool, valid)
 {
        NO_ARGS;
 
-       IF_RETVAL_USED {
+       if (return_value_used) {
                getObject(http_requestpool_object, obj);
                RETURN_BOOL(obj->iterator.pos >= 0 && obj->iterator.pos < zend_llist_count(&obj->pool.handles));
        }
@@ -415,7 +406,7 @@ PHP_METHOD(HttpRequestPool, current)
 {
        NO_ARGS;
 
-       IF_RETVAL_USED {
+       if (return_value_used) {
                long pos = 0;
                zval **current = NULL;
                zend_llist_position lpos;
@@ -442,7 +433,7 @@ PHP_METHOD(HttpRequestPool, key)
 {
        NO_ARGS;
 
-       IF_RETVAL_USED {
+       if (return_value_used) {
                getObject(http_requestpool_object, obj);
                RETURN_LONG(obj->iterator.pos);
        }