]> granicus.if.org Git - php/commitdiff
Remove dead code
authorNikita Popov <nikita.ppv@gmail.com>
Wed, 29 Apr 2020 08:22:05 +0000 (10:22 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Wed, 29 Apr 2020 08:22:11 +0000 (10:22 +0200)
As pointed out by Girgias, index is always non-NULL here.

ext/standard/array.c

index d86177b5f90682c0752a0ef8ea618c9496bcdb36..09756b74e5b441ef3b18c9a335ecaefdffbcd666 100644 (file)
@@ -4199,50 +4199,46 @@ PHP_FUNCTION(array_column)
                        /* Failure will leave keyval alone which will land us on the final else block below
                         * which is to append the value as next_index
                         */
-                       if (index) {
-                               zval rv;
-                               zval *keyval = array_column_fetch_prop(data, index, &rv);
-
-                               if (keyval) {
-                                       switch (Z_TYPE_P(keyval)) {
-                                               case IS_STRING:
-                                                       zend_symtable_update(Z_ARRVAL_P(return_value), Z_STR_P(keyval), colval);
-                                                       break;
-                                               case IS_LONG:
-                                                       zend_hash_index_update(Z_ARRVAL_P(return_value), Z_LVAL_P(keyval), colval);
-                                                       break;
-                                               case IS_OBJECT:
-                                                       {
-                                                               zend_string *tmp_key;
-                                                               zend_string *key = zval_get_tmp_string(keyval, &tmp_key);
-                                                               zend_symtable_update(Z_ARRVAL_P(return_value), key, colval);
-                                                               zend_tmp_string_release(tmp_key);
-                                                               break;
-                                                       }
-                                               case IS_NULL:
-                                                       zend_hash_update(Z_ARRVAL_P(return_value), ZSTR_EMPTY_ALLOC(), colval);
-                                                       break;
-                                               case IS_DOUBLE:
-                                                       zend_hash_index_update(Z_ARRVAL_P(return_value),
-                                                                       zend_dval_to_lval(Z_DVAL_P(keyval)), colval);
-                                                       break;
-                                               case IS_TRUE:
-                                                       zend_hash_index_update(Z_ARRVAL_P(return_value), 1, colval);
-                                                       break;
-                                               case IS_FALSE:
-                                                       zend_hash_index_update(Z_ARRVAL_P(return_value), 0, colval);
-                                                       break;
-                                               case IS_RESOURCE:
-                                                       zend_hash_index_update(Z_ARRVAL_P(return_value), Z_RES_HANDLE_P(keyval), colval);
-                                                       break;
-                                               default:
-                                                       zend_hash_next_index_insert(Z_ARRVAL_P(return_value), colval);
+                       zval rv;
+                       zval *keyval = array_column_fetch_prop(data, index, &rv);
+
+                       if (keyval) {
+                               switch (Z_TYPE_P(keyval)) {
+                                       case IS_STRING:
+                                               zend_symtable_update(Z_ARRVAL_P(return_value), Z_STR_P(keyval), colval);
+                                               break;
+                                       case IS_LONG:
+                                               zend_hash_index_update(Z_ARRVAL_P(return_value), Z_LVAL_P(keyval), colval);
+                                               break;
+                                       case IS_OBJECT:
+                                               {
+                                                       zend_string *tmp_key;
+                                                       zend_string *key = zval_get_tmp_string(keyval, &tmp_key);
+                                                       zend_symtable_update(Z_ARRVAL_P(return_value), key, colval);
+                                                       zend_tmp_string_release(tmp_key);
                                                        break;
-                                       }
-                                       zval_ptr_dtor(keyval);
-                               } else {
-                                       zend_hash_next_index_insert(Z_ARRVAL_P(return_value), colval);
+                                               }
+                                       case IS_NULL:
+                                               zend_hash_update(Z_ARRVAL_P(return_value), ZSTR_EMPTY_ALLOC(), colval);
+                                               break;
+                                       case IS_DOUBLE:
+                                               zend_hash_index_update(Z_ARRVAL_P(return_value),
+                                                               zend_dval_to_lval(Z_DVAL_P(keyval)), colval);
+                                               break;
+                                       case IS_TRUE:
+                                               zend_hash_index_update(Z_ARRVAL_P(return_value), 1, colval);
+                                               break;
+                                       case IS_FALSE:
+                                               zend_hash_index_update(Z_ARRVAL_P(return_value), 0, colval);
+                                               break;
+                                       case IS_RESOURCE:
+                                               zend_hash_index_update(Z_ARRVAL_P(return_value), Z_RES_HANDLE_P(keyval), colval);
+                                               break;
+                                       default:
+                                               zend_hash_next_index_insert(Z_ARRVAL_P(return_value), colval);
+                                               break;
                                }
+                               zval_ptr_dtor(keyval);
                        } else {
                                zend_hash_next_index_insert(Z_ARRVAL_P(return_value), colval);
                        }