- Fix property handling
[m6w6/ext-http] / php_http_std_defs.h
index 115ece2e1fc1ca5e432075a0779c07ef72d0c402..f0e862e04c5814255e88220673360de67ac1e625 100644 (file)
@@ -289,15 +289,15 @@ typedef int STATUS;
                zval_dtor(__tmp); \
                efree(__tmp); \
        }
-#      define DCL_PROP(a, t, n, v) zend_declare_property_ ##t(ce, (#n), sizeof(#n), (v), (ZEND_ACC_ ##a) TSRMLS_CC)
-#      define DCL_PROP_Z(a, n, v) zend_declare_property(ce, (#n), sizeof(#n), (v), (ZEND_ACC_ ##a) TSRMLS_CC)
-#      define DCL_PROP_N(a, n) zend_declare_property_null(ce, (#n), sizeof(#n), (ZEND_ACC_ ##a) TSRMLS_CC)
+#      define DCL_PROP(a, t, n, v) zend_declare_property_ ##t(ce, (#n), sizeof(#n)-1, (v), (ZEND_ACC_ ##a) TSRMLS_CC)
+#      define DCL_PROP_Z(a, n, v) zend_declare_property(ce, (#n), sizeof(#n)-1, (v), (ZEND_ACC_ ##a) TSRMLS_CC)
+#      define DCL_PROP_N(a, n) zend_declare_property_null(ce, (#n), sizeof(#n)-1, (ZEND_ACC_ ##a) TSRMLS_CC)
 #      define UPD_PROP(o, t, n, v) UPD_PROP_EX(o, getThis(), t, n, v)
-#      define UPD_PROP_EX(o, this, t, n, v) zend_update_property_ ##t(o->zo.ce, this, (#n), sizeof(#n), (v) TSRMLS_CC)
+#      define UPD_PROP_EX(o, this, t, n, v) zend_update_property_ ##t(o->zo.ce, this, (#n), sizeof(#n)-1, (v) TSRMLS_CC)
 #      define SET_PROP(o, n, z) SET_PROP_EX(o, getThis(), n, z)
-#      define SET_PROP_EX(o, this, n, z) zend_update_property(o->zo.ce, this, (#n), sizeof(#n), (z) TSRMLS_CC)
+#      define SET_PROP_EX(o, this, n, z) zend_update_property(o->zo.ce, this, (#n), sizeof(#n)-1, (z) TSRMLS_CC)
 #      define GET_PROP(o, n) GET_PROP_EX(o, getThis(), n)
-#      define GET_PROP_EX(o, this, n) zend_read_property(o->zo.ce, this, (#n), sizeof(#n), 0 TSRMLS_CC)
+#      define GET_PROP_EX(o, this, n) zend_read_property(o->zo.ce, this, (#n), sizeof(#n)-1, 0 TSRMLS_CC)
 
 #      define ACC_PROP_PRIVATE(ce, flags)              ((flags & ZEND_ACC_PRIVATE) && (EG(scope) && ce == EG(scope))
 #      define ACC_PROP_PROTECTED(ce, flags)    ((flags & ZEND_ACC_PROTECTED) && (zend_check_protected(ce, EG(scope))))
@@ -314,8 +314,8 @@ typedef int STATUS;
 
 #      define FREE_PARR(o, p) \
        { \
-               zval *__tmp = NULL; \
-               if (__tmp = GET_PROP(o, p)) { \
+               zval *__tmp = GET_PROP(o, p); \
+               if (__tmp) { \
                        zval_dtor(__tmp); \
                        FREE_ZVAL(__tmp); \
                        __tmp = NULL; \