SHARE
TWEET

Untitled

a guest Aug 23rd, 2011 78 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Common subdirectories: ../php-5.3.8/Zend/RFCs and Zend/RFCs
  2. Common subdirectories: ../php-5.3.8/Zend/tests and Zend/tests
  3. Binary files ../php-5.3.8/Zend/zend_alloc.o and Zend/zend_alloc.o differ
  4. diff -u ../php-5.3.8/Zend/zend_API.c Zend/zend_API.c
  5. --- ../php-5.3.8/Zend/zend_API.c        2011-08-05 18:22:27.000000000 -0700
  6. +++ Zend/zend_API.c     2011-08-23 12:05:53.000000000 -0700
  7. @@ -1770,6 +1770,12 @@
  8.                 } else if (ARG_SHOULD_BE_SENT_BY_REF(fptr, 1)) {
  9.                         zend_error(error_type, "Method %s::%s() cannot take arguments by reference", ce->name, ZEND_ISSET_FUNC_NAME);
  10.                 }
  11. +       } else if (name_len == sizeof(ZEND_EMPTY_FUNC_NAME) - 1 && !memcmp(lcname, ZEND_EMPTY_FUNC_NAME, sizeof(ZEND_EMPTY_FUNC_NAME))) {
  12. +               if (fptr->common.num_args != 1) {
  13. +                       zend_error(error_type, "Method %s::%s() must take exactly 1 argument", ce->name, ZEND_EMPTY_FUNC_NAME);
  14. +               } else if (ARG_SHOULD_BE_SENT_BY_REF(fptr, 1)) {
  15. +                       zend_error(error_type, "Method %s::%s() cannot take arguments by reference", ce->name, ZEND_EMPTY_FUNC_NAME);
  16. +               }
  17.         } else if (name_len == sizeof(ZEND_CALL_FUNC_NAME) - 1 && !memcmp(lcname, ZEND_CALL_FUNC_NAME, sizeof(ZEND_CALL_FUNC_NAME))) {
  18.                 if (fptr->common.num_args != 2) {
  19.                         zend_error(error_type, "Method %s::%s() must take exactly 2 arguments", ce->name, ZEND_CALL_FUNC_NAME);
  20. @@ -1801,7 +1807,7 @@
  21.         int count=0, unload=0;
  22.         HashTable *target_function_table = function_table;
  23.         int error_type;
  24. -       zend_function *ctor = NULL, *dtor = NULL, *clone = NULL, *__get = NULL, *__set = NULL, *__unset = NULL, *__isset = NULL, *__call = NULL, *__callstatic = NULL, *__tostring = NULL;
  25. +       zend_function *ctor = NULL, *dtor = NULL, *clone = NULL, *__get = NULL, *__set = NULL, *__unset = NULL, *__isset = NULL, *__empty = NULL, *__call = NULL, *__callstatic = NULL, *__tostring = NULL;
  26.         char *lowercase_name;
  27.         int fname_len;
  28.         char *lc_class_name = NULL;
  29. @@ -1931,6 +1937,8 @@
  30.                                 __unset = reg_function;
  31.                         } else if ((fname_len == sizeof(ZEND_ISSET_FUNC_NAME)-1) && !memcmp(lowercase_name, ZEND_ISSET_FUNC_NAME, sizeof(ZEND_ISSET_FUNC_NAME))) {
  32.                                 __isset = reg_function;
  33. +                       } else if ((fname_len == sizeof(ZEND_EMPTY_FUNC_NAME)-1) && !memcmp(lowercase_name, ZEND_EMPTY_FUNC_NAME, sizeof(ZEND_EMPTY_FUNC_NAME))) {
  34. +                               __empty = reg_function;
  35.                         } else {
  36.                                 reg_function = NULL;
  37.                         }
  38. @@ -1969,6 +1977,7 @@
  39.                 scope->__set = __set;
  40.                 scope->__unset = __unset;
  41.                 scope->__isset = __isset;
  42. +               scope->__empty = __empty;
  43.                 if (ctor) {
  44.                         ctor->common.fn_flags |= ZEND_ACC_CTOR;
  45.                         if (ctor->common.fn_flags & ZEND_ACC_STATIC) {
  46. @@ -2032,6 +2041,12 @@
  47.                         }
  48.                         __isset->common.fn_flags &= ~ZEND_ACC_ALLOW_STATIC;
  49.                 }
  50. +               if (__empty) {
  51. +                       if (__empty->common.fn_flags & ZEND_ACC_STATIC) {
  52. +                               zend_error(error_type, "Method %s::%s() cannot be static", scope->name, __isset->common.function_name);
  53. +                       }
  54. +                       __empty->common.fn_flags &= ~ZEND_ACC_ALLOW_STATIC;
  55. +               }
  56.                 efree(lc_class_name);
  57.         }
  58.         return SUCCESS;
  59. Binary files ../php-5.3.8/Zend/zend_API.o and Zend/zend_API.o differ
  60. diff -u ../php-5.3.8/Zend/zend_builtin_functions.c Zend/zend_builtin_functions.c
  61. --- ../php-5.3.8/Zend/zend_builtin_functions.c  2011-08-08 07:54:50.000000000 -0700
  62. +++ Zend/zend_builtin_functions.c       2011-08-23 16:57:36.000000000 -0700
  63. @@ -1148,7 +1148,7 @@
  64.  
  65.         if (Z_TYPE_P(object) ==  IS_OBJECT &&
  66.                 Z_OBJ_HANDLER_P(object, has_property) &&
  67. -               Z_OBJ_HANDLER_P(object, has_property)(object, &property_z, 2 TSRMLS_CC)) {
  68. +               Z_OBJ_HANDLER_P(object, has_property)(object, &property_z, 3 TSRMLS_CC)) {
  69.                 RETURN_TRUE;
  70.         }
  71.         RETURN_FALSE;
  72. Binary files ../php-5.3.8/Zend/zend_builtin_functions.o and Zend/zend_builtin_functions.o differ
  73. Binary files ../php-5.3.8/Zend/zend_closures.o and Zend/zend_closures.o differ
  74. diff -u ../php-5.3.8/Zend/zend_compile.c Zend/zend_compile.c
  75. --- ../php-5.3.8/Zend/zend_compile.c    2011-07-08 09:29:33.000000000 -0700
  76. +++ Zend/zend_compile.c 2011-08-23 12:04:23.000000000 -0700
  77. @@ -1265,6 +1265,10 @@
  78.                                 if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
  79.                                         zend_error(E_WARNING, "The magic method __isset() must have public visibility and cannot be static");
  80.                                 }
  81. +                       } else if ((name_len == sizeof(ZEND_EMPTY_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_EMPTY_FUNC_NAME, sizeof(ZEND_EMPTY_FUNC_NAME)-1))) {
  82. +                               if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
  83. +                                       zend_error(E_WARNING, "The magic method __empty() must have public visibility and cannot be static");
  84. +                               }
  85.                         } else if ((name_len == sizeof(ZEND_TOSTRING_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_TOSTRING_FUNC_NAME, sizeof(ZEND_TOSTRING_FUNC_NAME)-1))) {
  86.                                 if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
  87.                                         zend_error(E_WARNING, "The magic method __toString() must have public visibility and cannot be static");
  88. @@ -1320,6 +1324,11 @@
  89.                                         zend_error(E_WARNING, "The magic method __isset() must have public visibility and cannot be static");
  90.                                 }
  91.                                 CG(active_class_entry)->__isset = (zend_function *) CG(active_op_array);
  92. +                       } else if ((name_len == sizeof(ZEND_EMPTY_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_EMPTY_FUNC_NAME, sizeof(ZEND_EMPTY_FUNC_NAME)-1))) {
  93. +                               if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
  94. +                                       zend_error(E_WARNING, "The magic method __empty() must have public visibility and cannot be static");
  95. +                               }
  96. +                               CG(active_class_entry)->__empty = (zend_function *) CG(active_op_array);
  97.                         } else if ((name_len == sizeof(ZEND_TOSTRING_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_TOSTRING_FUNC_NAME, sizeof(ZEND_TOSTRING_FUNC_NAME)-1))) {
  98.                                 if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
  99.                                         zend_error(E_WARNING, "The magic method __toString() must have public visibility and cannot be static");
  100. @@ -2445,6 +2454,9 @@
  101.         if (!ce->__isset) {
  102.                 ce->__isset = ce->parent->__isset;
  103.         }
  104. +       if (!ce->__empty) {
  105. +               ce->__empty = ce->parent->__empty;
  106. +       }
  107.         if (!ce->__call) {
  108.                 ce->__call = ce->parent->__call;
  109.         }
  110. @@ -5041,6 +5053,7 @@
  111.                 ce->__set = NULL;
  112.                 ce->__unset = NULL;
  113.                 ce->__isset = NULL;
  114. +               ce->__empty = NULL;
  115.                 ce->__call = NULL;
  116.                 ce->__callstatic = NULL;
  117.                 ce->__tostring = NULL;
  118. diff -u ../php-5.3.8/Zend/zend_compile.h Zend/zend_compile.h
  119. --- ../php-5.3.8/Zend/zend_compile.h    2011-06-11 18:43:10.000000000 -0700
  120. +++ Zend/zend_compile.h 2011-08-23 12:00:59.000000000 -0700
  121. @@ -742,6 +742,7 @@
  122.  #define ZEND_SET_FUNC_NAME          "__set"
  123.  #define ZEND_UNSET_FUNC_NAME        "__unset"
  124.  #define ZEND_ISSET_FUNC_NAME        "__isset"
  125. +#define ZEND_EMPTY_FUNC_NAME        "__empty"
  126.  #define ZEND_CALL_FUNC_NAME         "__call"
  127.  #define ZEND_CALLSTATIC_FUNC_NAME   "__callstatic"
  128.  #define ZEND_TOSTRING_FUNC_NAME     "__tostring"
  129. Binary files ../php-5.3.8/Zend/zend_compile.o and Zend/zend_compile.o differ
  130. Binary files ../php-5.3.8/Zend/zend_constants.o and Zend/zend_constants.o differ
  131. Binary files ../php-5.3.8/Zend/zend_default_classes.o and Zend/zend_default_classes.o differ
  132. Binary files ../php-5.3.8/Zend/zend_dynamic_array.o and Zend/zend_dynamic_array.o differ
  133. Binary files ../php-5.3.8/Zend/zend_exceptions.o and Zend/zend_exceptions.o differ
  134. Binary files ../php-5.3.8/Zend/zend_execute_API.o and Zend/zend_execute_API.o differ
  135. Binary files ../php-5.3.8/Zend/zend_execute.o and Zend/zend_execute.o differ
  136. Binary files ../php-5.3.8/Zend/zend_extensions.o and Zend/zend_extensions.o differ
  137. Binary files ../php-5.3.8/Zend/zend_float.o and Zend/zend_float.o differ
  138. Binary files ../php-5.3.8/Zend/zend_gc.o and Zend/zend_gc.o differ
  139. diff -u ../php-5.3.8/Zend/zend.h Zend/zend.h
  140. --- ../php-5.3.8/Zend/zend.h    2011-01-16 13:39:22.000000000 -0700
  141. +++ Zend/zend.h 2011-08-23 14:47:16.000000000 -0700
  142. @@ -291,6 +291,7 @@
  143.         zend_bool in_set;
  144.         zend_bool in_unset;
  145.         zend_bool in_isset;
  146. +       zend_bool in_empty;
  147.         zend_bool dummy; /* sizeof(zend_guard) must not be equal to sizeof(void*) */
  148.  } zend_guard;
  149.  
  150. @@ -439,6 +440,7 @@
  151.         union _zend_function *__set;
  152.         union _zend_function *__unset;
  153.         union _zend_function *__isset;
  154. +       union _zend_function *__empty;
  155.         union _zend_function *__call;
  156.         union _zend_function *__callstatic;
  157.         union _zend_function *__tostring;
  158. Binary files ../php-5.3.8/Zend/zend_hash.o and Zend/zend_hash.o differ
  159. Binary files ../php-5.3.8/Zend/zend_highlight.o and Zend/zend_highlight.o differ
  160. Binary files ../php-5.3.8/Zend/zend_indent.o and Zend/zend_indent.o differ
  161. Binary files ../php-5.3.8/Zend/zend_ini.o and Zend/zend_ini.o differ
  162. Binary files ../php-5.3.8/Zend/zend_ini_parser.o and Zend/zend_ini_parser.o differ
  163. Binary files ../php-5.3.8/Zend/zend_ini_scanner.o and Zend/zend_ini_scanner.o differ
  164. Binary files ../php-5.3.8/Zend/zend_interfaces.o and Zend/zend_interfaces.o differ
  165. Binary files ../php-5.3.8/Zend/zend_iterators.o and Zend/zend_iterators.o differ
  166. Binary files ../php-5.3.8/Zend/zend_language_parser.o and Zend/zend_language_parser.o differ
  167. Binary files ../php-5.3.8/Zend/zend_language_scanner.o and Zend/zend_language_scanner.o differ
  168. Binary files ../php-5.3.8/Zend/zend_list.o and Zend/zend_list.o differ
  169. Binary files ../php-5.3.8/Zend/zend_llist.o and Zend/zend_llist.o differ
  170. Binary files ../php-5.3.8/Zend/zend_multibyte.o and Zend/zend_multibyte.o differ
  171. Binary files ../php-5.3.8/Zend/zend.o and Zend/zend.o differ
  172. diff -u ../php-5.3.8/Zend/zend_object_handlers.c Zend/zend_object_handlers.c
  173. --- ../php-5.3.8/Zend/zend_object_handlers.c    2011-04-07 06:35:27.000000000 -0700
  174. +++ Zend/zend_object_handlers.c 2011-08-23 17:26:17.000000000 -0700
  175. @@ -158,6 +158,27 @@
  176.  }
  177.  /* }}} */
  178.  
  179. +static zval *zend_std_call_isempty(zval *object, zval *member TSRMLS_DC) /* {{{ */
  180. +{
  181. +       zval *retval = NULL;
  182. +       zend_class_entry *ce = Z_OBJCE_P(object);
  183. +
  184. +       /* __empty handler is called with one argument:
  185. +             property name
  186. +
  187. +          it should return whether the property is empty or not
  188. +       */
  189. +
  190. +       SEPARATE_ARG_IF_REF(member);
  191. +
  192. +       zend_call_method_with_1_params(&object, ce, &ce->__empty, ZEND_EMPTY_FUNC_NAME, &retval, member);
  193. +
  194. +       zval_ptr_dtor(&member);
  195. +
  196. +       return retval;
  197. +}
  198. +/* }}} */
  199. +
  200.  static int zend_verify_property_access(zend_property_info *property_info, zend_class_entry *ce TSRMLS_DC) /* {{{ */
  201.  {
  202.         switch (property_info->flags & ZEND_ACC_PPP_MASK) {
  203. @@ -307,6 +328,7 @@
  204.         stub.in_set = 0;
  205.         stub.in_unset = 0;
  206.         stub.in_isset = 0;
  207. +       stub.in_empty = 0;
  208.         return zend_hash_quick_add(zobj->guards, property_info->name, property_info->name_length+1, property_info->h, (void**)&stub, sizeof(stub), (void**) pguard);
  209.  }
  210.  /* }}} */
  211. @@ -1164,14 +1186,34 @@
  212.  #if DEBUG_OBJECT_HANDLERS
  213.         fprintf(stderr, "Read object #%d property: %s\n", Z_OBJ_HANDLE_P(object), Z_STRVAL_P(member));
  214.  #endif
  215. -
  216.         property_info = zend_get_property_info(zobj->ce, member, 1 TSRMLS_CC);
  217.  
  218.         if (!property_info || zend_hash_quick_find(zobj->properties, property_info->name, property_info->name_length+1, property_info->h, (void **) &value) == FAILURE) {
  219.                 zend_guard *guard;
  220.  
  221.                 result = 0;
  222. -               if ((has_set_exists != 2) &&
  223. +
  224. +               if(has_set_exists == ZEND_ISEMPTY &&
  225. +                   zobj->ce->__empty &&
  226. +                   zend_get_property_guard(zobj, property_info, member, &guard) == SUCCESS &&
  227. +                   !guard->in_empty) {
  228. +                        zval *rv;
  229. +
  230. +                        /* have empty func - try with it! */
  231. +                        Z_ADDREF_P(object);
  232. +                        if (PZVAL_IS_REF(object)) {
  233. +                                SEPARATE_ZVAL(&object);
  234. +                        }
  235. +                        guard->in_empty = 1; /* prevent circular getting */
  236. +                        rv = zend_std_call_isempty(object, member TSRMLS_CC);
  237. +                        if (rv) {
  238. +                                result = !zend_is_true(rv);
  239. +                                zval_ptr_dtor(&rv);
  240. +                        }
  241. +                        guard->in_empty = 0;
  242. +                        zval_ptr_dtor(&object);
  243. +
  244. +               } else if (has_set_exists == ZEND_ISSET &&
  245.                     zobj->ce->__isset &&
  246.                     zend_get_property_guard(zobj, property_info, member, &guard) == SUCCESS &&
  247.                     !guard->in_isset) {
  248. @@ -1187,7 +1229,7 @@
  249.                         if (rv) {
  250.                                 result = zend_is_true(rv);
  251.                                 zval_ptr_dtor(&rv);
  252. -                               if (has_set_exists && result) {
  253. +                               if (!result) {
  254.                                         if (!EG(exception) && zobj->ce->__get && !guard->in_get) {
  255.                                                 guard->in_get = 1;
  256.                                                 rv = zend_std_call_getter(object, member TSRMLS_CC);
  257. @@ -1208,17 +1250,17 @@
  258.                         zval_ptr_dtor(&object);
  259.                 }
  260.         } else {
  261. -               switch (has_set_exists) {
  262. -               case 0:
  263. +                switch (has_set_exists) {
  264. +                case ZEND_ISSET:
  265.                         result = (Z_TYPE_PP(value) != IS_NULL);
  266.                         break;
  267. -               default:
  268. +                case ZEND_ISEMPTY:
  269.                         result = zend_is_true(*value);
  270.                         break;
  271. -               case 2:
  272. -                       result = 1;
  273. -                       break;
  274. -               }
  275. +                case 3: // comes from property_exists
  276. +                        result = 1;
  277. +                        break;
  278. +                }
  279.         }
  280.  
  281.         if (tmp_member) {
  282. Binary files ../php-5.3.8/Zend/zend_object_handlers.o and Zend/zend_object_handlers.o differ
  283. Binary files ../php-5.3.8/Zend/zend_objects_API.o and Zend/zend_objects_API.o differ
  284. Binary files ../php-5.3.8/Zend/zend_objects.o and Zend/zend_objects.o differ
  285. Binary files ../php-5.3.8/Zend/zend_opcode.o and Zend/zend_opcode.o differ
  286. Binary files ../php-5.3.8/Zend/zend_operators.o and Zend/zend_operators.o differ
  287. Binary files ../php-5.3.8/Zend/zend_ptr_stack.o and Zend/zend_ptr_stack.o differ
  288. Binary files ../php-5.3.8/Zend/zend_qsort.o and Zend/zend_qsort.o differ
  289. Binary files ../php-5.3.8/Zend/zend_sprintf.o and Zend/zend_sprintf.o differ
  290. Binary files ../php-5.3.8/Zend/zend_stack.o and Zend/zend_stack.o differ
  291. Binary files ../php-5.3.8/Zend/zend_stream.o and Zend/zend_stream.o differ
  292. Binary files ../php-5.3.8/Zend/zend_strtod.o and Zend/zend_strtod.o differ
  293. Binary files ../php-5.3.8/Zend/zend_ts_hash.o and Zend/zend_ts_hash.o differ
  294. Binary files ../php-5.3.8/Zend/zend_variables.o and Zend/zend_variables.o differ
  295. diff -u ../php-5.3.8/Zend/zend_vm_def.h Zend/zend_vm_def.h
  296. --- ../php-5.3.8/Zend/zend_vm_def.h     2011-07-11 03:31:49.000000000 -0700
  297. +++ Zend/zend_vm_def.h  2011-08-23 16:10:12.000000000 -0700
  298. @@ -4009,7 +4009,7 @@
  299.                         }
  300.                         if (prop_dim) {
  301.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  302. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  303. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  304.                                 } else {
  305.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  306.                                         result = 0;
  307. diff -u ../php-5.3.8/Zend/zend_vm_execute.h Zend/zend_vm_execute.h
  308. --- ../php-5.3.8/Zend/zend_vm_execute.h 2011-07-11 03:31:49.000000000 -0700
  309. +++ Zend/zend_vm_execute.h      2011-08-23 15:43:17.000000000 -0700
  310. @@ -10898,6 +10898,8 @@
  311.         zval **container = _get_zval_ptr_ptr_var(&opline->op1, EX(Ts), &free_op1 TSRMLS_CC);
  312.         zval **value = NULL;
  313.         int result = 0;
  314. +        fprintf(stderr, "has_set_exists isset %d\n", ZEND_ISSET);
  315. +        fprintf(stderr, "has_set_exists empty %d\n", ZEND_ISEMPTY);
  316.  
  317.         if (IS_VAR != IS_VAR || container) {
  318.  
  319. @@ -10959,9 +10961,10 @@
  320.                         if (0) {
  321.                                 MAKE_REAL_ZVAL_PTR(offset);
  322.                         }
  323. +                                       zend_error(E_WARNING, "debug: %d", opline->extended_value);
  324.                         if (prop_dim) {
  325.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  326. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  327. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  328.                                 } else {
  329.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  330.                                         result = 0;
  331. @@ -12712,7 +12715,7 @@
  332.                         }
  333.                         if (prop_dim) {
  334.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  335. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  336. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  337.                                 } else {
  338.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  339.                                         result = 0;
  340. @@ -14514,7 +14517,7 @@
  341.                         }
  342.                         if (prop_dim) {
  343.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  344. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  345. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  346.                                 } else {
  347.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  348.                                         result = 0;
  349. @@ -16902,7 +16905,7 @@
  350.                         }
  351.                         if (prop_dim) {
  352.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  353. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  354. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  355.                                 } else {
  356.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  357.                                         result = 0;
  358. @@ -18094,7 +18097,7 @@
  359.                         }
  360.                         if (prop_dim) {
  361.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  362. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  363. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  364.                                 } else {
  365.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  366.                                         result = 0;
  367. @@ -19153,7 +19156,7 @@
  368.                         }
  369.                         if (prop_dim) {
  370.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  371. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  372. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  373.                                 } else {
  374.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  375.                                         result = 0;
  376. @@ -20212,7 +20215,7 @@
  377.                         }
  378.                         if (prop_dim) {
  379.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  380. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  381. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  382.                                 } else {
  383.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  384.                                         result = 0;
  385. @@ -21530,7 +21533,7 @@
  386.                         }
  387.                         if (prop_dim) {
  388.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  389. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  390. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  391.                                 } else {
  392.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  393.                                         result = 0;
  394. @@ -24544,7 +24547,7 @@
  395.                         }
  396.                         if (prop_dim) {
  397.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  398. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  399. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  400.                                 } else {
  401.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  402.                                         result = 0;
  403. @@ -26186,7 +26189,7 @@
  404.                         }
  405.                         if (prop_dim) {
  406.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  407. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  408. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  409.                                 } else {
  410.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  411.                                         result = 0;
  412. @@ -27878,7 +27881,7 @@
  413.                         }
  414.                         if (prop_dim) {
  415.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  416. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  417. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  418.                                 } else {
  419.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  420.                                         result = 0;
  421. @@ -30057,7 +30060,7 @@
  422.                         }
  423.                         if (prop_dim) {
  424.                                 if (Z_OBJ_HT_P(*container)->has_property) {
  425. -                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value == ZEND_ISEMPTY) TSRMLS_CC);
  426. +                                       result = Z_OBJ_HT_P(*container)->has_property(*container, offset, opline->extended_value TSRMLS_CC);
  427.                                 } else {
  428.                                         zend_error(E_NOTICE, "Trying to check property of non-object");
  429.                                         result = 0;
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top