]> granicus.if.org Git - php/commitdiff
Make codes more clearly, and make the static analyzer silent..
authorXinchen Hui <laruence@php.net>
Mon, 8 Aug 2011 06:49:17 +0000 (06:49 +0000)
committerXinchen Hui <laruence@php.net>
Mon, 8 Aug 2011 06:49:17 +0000 (06:49 +0000)
ext/standard/info.c

index 2bee7e9803838a08c22d3d642065e2fb92411299..f57e4afab39e681196ae20b0a701fc9a389c136f 100644 (file)
@@ -245,22 +245,22 @@ static void php_print_gpcse_array(char *name, uint name_length TSRMLS_DC)
                                }
                        } else {
                                tmp2 = **tmp;
-                               switch (Z_TYPE_PP(tmp)) {
-                                       default:
-                                               tmp = NULL;
-                                               zval_copy_ctor(&tmp2);
-                                               convert_to_string(&tmp2);
-                                       case IS_STRING:
-                                               if (!sapi_module.phpinfo_as_text) {
-                                                       if (Z_STRLEN(tmp2) == 0) {
-                                                               php_info_print("<i>no value</i>");
-                                                       } else {
-                                                               php_info_print_html_esc(Z_STRVAL(tmp2), Z_STRLEN(tmp2));
-                                                       }
-                                               } else {
-                                                       php_info_print(Z_STRVAL(tmp2));
-                                               }
+                               if (Z_TYPE_PP(tmp) != IS_STRING) {
+                                       tmp = NULL;
+                                       zval_copy_ctor(&tmp2);
+                                       convert_to_string(&tmp2);
                                }
+
+                               if (!sapi_module.phpinfo_as_text) {
+                                       if (Z_STRLEN(tmp2) == 0) {
+                                               php_info_print("<i>no value</i>");
+                                       } else {
+                                               php_info_print_html_esc(Z_STRVAL(tmp2), Z_STRLEN(tmp2));
+                                       }
+                               } else {
+                                       php_info_print(Z_STRVAL(tmp2));
+                               }
+
                                if (!tmp) {
                                        zval_dtor(&tmp2);
                                }