]> granicus.if.org Git - php/commitdiff
Fixed isset($str[$double])
authorDmitry Stogov <dmitry@zend.com>
Fri, 28 Feb 2014 09:04:46 +0000 (13:04 +0400)
committerDmitry Stogov <dmitry@zend.com>
Fri, 28 Feb 2014 09:04:46 +0000 (13:04 +0400)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 1279f2382c482747877d3d68f53070bc8c634aa8..dc362369e6878e283c5294255a669f307943f467 100644 (file)
@@ -4667,7 +4667,7 @@ ZEND_VM_C_LABEL(num_index_prop):
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
index f209c1244a09d1c8523e35529b60a3b8667f1500..7073a1f6f66e1f14cfe58b541f5a207b176c0486 100644 (file)
@@ -15841,7 +15841,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -17859,7 +17859,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -20271,7 +20271,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -23463,7 +23463,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -24909,7 +24909,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -26187,7 +26187,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -27465,7 +27465,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -29143,7 +29143,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -32571,7 +32571,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -34464,7 +34464,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -36751,7 +36751,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);
@@ -39687,7 +39687,7 @@ num_index_prop:
                zval tmp;
 
                if (Z_TYPE_P(offset) != IS_LONG) {
-                       if (Z_TYPE_P(offset) <= IS_BOOL /* simple scalar types */
+                       if (!Z_REFCOUNTED_P(offset) /* simple scalar types */
                                        || (Z_TYPE_P(offset) == IS_STRING /* or numeric string */
                                                && IS_LONG == is_numeric_string(Z_STRVAL_P(offset), Z_STRLEN_P(offset), NULL, NULL, 0))) {
                                ZVAL_DUP(&tmp, offset);