[xdebug-dev] xdebug xdebug/xdebug.c xdebug/xdebug_var.c xdebug/tests/array_map.phpt xdebug/tests/bug00022.phpt xdebug/tests/bug00032-ze22.phpt xdebug/tests/bug00089.phpt xdebug/tests/bug00173.phpt xdebug/tests/bug00184.phpt xdebug/tests/get_declared_vars.phpt xdebug/tests/test1.phpt xdebug/tests/test12.phpt xdebug/tests/test6.phpt xdebug/tests/test8.phpt xdebug/tests/xdebug_var_dump.phpt - Implemented the "xdebug.var_display_max_children" setting. The default is set to 128 children.

From: Derick Rethans <derick[@]derickrethans.nl>
Date: Fri, 22 Dec 2006 14:51:04 +0100

Date: Fri Dec 22 14:51:03 CET 2006
User: Derick Rethans
Directory: xdebug

Log Message:
[6.00]
- Implemented the "xdebug.var_display_max_children" setting. The default is set to 128 children.
- Fixed the issue where get_declared_parameters() did not now about variables
  there are in the declared function header, but were not used in the code. Due
  to this change expected arguments that were not send to a function will now
  show up as ??? in stack and function traces. Only tested with PHP 5.2.
- Removed variable name printing from the fancy synopsis formatter.

Modified files:
           xdebug/xdebug.c (version: 1.363)
           xdebug/xdebug_var.c (version: 1.81)
           xdebug/tests/array_map.phpt (version: 1.12)
           xdebug/tests/bug00022.phpt (version: 1.4)
           xdebug/tests/bug00032-ze22.phpt (version: 1.4)
           xdebug/tests/bug00089.phpt (version: 1.5)
           xdebug/tests/bug00173.phpt (version: 1.4)
           xdebug/tests/bug00184.phpt (version: 1.3)
           xdebug/tests/get_declared_vars.phpt (version: 1.5)
           xdebug/tests/test1.phpt (version: 1.19)
           xdebug/tests/test12.phpt (version: 1.16)
           xdebug/tests/test6.phpt (version: 1.18)
           xdebug/tests/test8.phpt (version: 1.18)
           xdebug/tests/xdebug_var_dump.phpt (version: 1.6)

[FILE: /xdebug/xdebug.c]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.362
retrieving revision 1.363
diff -u -r1.362 -r1.363
--- xdebug/xdebug.c:1.362 Fri Dec 01 18:38:21 2006 GMT
+++ xdebug/xdebug.c Fri Dec 22 12:51:03 2006 GMT
@@ -320,11 +320,11 @@
 
         /* Variable display settings */
 #if ZEND_EXTENSION_API_NO < 90000000
-/* STD_PHP_INI_ENTRY("xdebug.var_display_max_children", "128", PHP_INI_ALL, OnUpdateInt, display_max_children, zend_xdebug_globals, xdebug_globals) */
+ STD_PHP_INI_ENTRY("xdebug.var_display_max_children", "128", PHP_INI_ALL, OnUpdateInt, display_max_children, zend_xdebug_globals, xdebug_globals)
         STD_PHP_INI_ENTRY("xdebug.var_display_max_data", "512", PHP_INI_ALL, OnUpdateInt, display_max_data, zend_xdebug_globals, xdebug_globals)
         STD_PHP_INI_ENTRY("xdebug.var_display_max_depth", "2", PHP_INI_ALL, OnUpdateInt, display_max_depth, zend_xdebug_globals, xdebug_globals)
 #else
-/* STD_PHP_INI_ENTRY("xdebug.var_display_max_children", "128", PHP_INI_ALL, OnUpdateLong, display_max_children, zend_xdebug_globals, xdebug_globals) */
+ STD_PHP_INI_ENTRY("xdebug.var_display_max_children", "128", PHP_INI_ALL, OnUpdateLong, display_max_children, zend_xdebug_globals, xdebug_globals)
         STD_PHP_INI_ENTRY("xdebug.var_display_max_data", "512", PHP_INI_ALL, OnUpdateLong, display_max_data, zend_xdebug_globals, xdebug_globals)
         STD_PHP_INI_ENTRY("xdebug.var_display_max_depth", "2", PHP_INI_ALL, OnUpdateLong, display_max_depth, zend_xdebug_globals, xdebug_globals)
 #endif
@@ -971,17 +971,10 @@
         function_stack_entry *tmp;
         zend_op *cur_opcode;
         zval **param;
- void **p;
- int arg_count = 0;
         int i = 0;
         char *aggr_key;
         int aggr_key_len;
 
- if (EG(argument_stack).top >= 2) {
- p = EG(argument_stack).top_element - 2;
- arg_count = (ulong) *p;
- }
-
         tmp = xdmalloc (sizeof (function_stack_entry));
         tmp->var = NULL;
         tmp->varc = 0;
@@ -1066,22 +1059,60 @@
                                 tmp->lineno = cur_opcode->lineno;
                         }
                 }
- if (XG(collect_params)) {
- tmp->var = xdmalloc(arg_count * sizeof (xdebug_var));
- for (i = 0; i < arg_count; i++) {
- tmp->var[tmp->varc].name = NULL;
- param = NULL;
- if (zend_ptr_stack_get_arg(tmp->varc + 1, (void**) &param TSRMLS_CC) == SUCCESS) {
- if (param) {
- tmp->var[tmp->varc].addr = *param;
- } else {
- tmp->var[tmp->varc].addr = NULL;
+ if (XG(collect_params) || XG(collect_vars)) {
+ void **p;
+ int arguments_sent = 0, arguments_wanted = 0, arguments_storage = 0;
+
+ /* This calculates how many arguments where sent to a function. It
+ * works for both internal and user defined functions.
+ * op_array->num_args works only for user defined functions so
+ * we're not using that here. */
+ if (EG(argument_stack).top >= 2) {
+ p = EG(argument_stack).top_element - 2;
+ arguments_sent = (ulong) *p;
+ arguments_wanted = arguments_sent;
+ }
+
+ if (tmp->user_defined == XDEBUG_EXTERNAL) {
+ arguments_wanted = op_array->num_args;
+ }
+
+ if (arguments_wanted > arguments_sent) {
+ arguments_storage = arguments_wanted;
+ } else {
+ arguments_storage = arguments_sent;
+ }
+ tmp->var = xdmalloc(arguments_storage * sizeof (xdebug_var));
+
+ for (i = 0; i < arguments_sent; i++) {
+ tmp->var[tmp->varc].name = NULL;
+ tmp->var[tmp->varc].addr = NULL;
+# if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 1) || PHP_MAJOR_VERSION >= 6
+ /* Because it is possible that more parameters are sent, then
+ * actually wanted we can only access the name in case there
+ * is an associated variable to receive the variable here. */
+ if (tmp->user_defined == XDEBUG_EXTERNAL && i < arguments_wanted) {
+ tmp->var[tmp->varc].name = xdstrdup(op_array->arg_info[i].name);
+ }
+# endif
+ if (XG(collect_params)) {
+ param = NULL;
+ if (zend_ptr_stack_get_arg(tmp->varc + 1, (void**) &param TSRMLS_CC) == SUCCESS) {
+ if (param) {
+ tmp->var[tmp->varc].addr = *param;
+ }
                                         }
- } else {
- tmp->var[tmp->varc].addr = NULL;
                                 }
                                 tmp->varc++;
                         }
+ /* Sometimes not enough arguments are send to a user defined
+ * function, so we have to gather only the name for those extra. */
+ if (tmp->user_defined == XDEBUG_EXTERNAL && arguments_sent < arguments_wanted) {
+ for (i = arguments_sent; i < arguments_wanted; i++) {
+ tmp->var[tmp->varc].name = xdstrdup(op_array->arg_info[i].name);
+ tmp->varc++;
+ }
+ }
                 }
         }
 
@@ -1153,6 +1184,16 @@
                 fse->used_vars = xdebug_hash_alloc(64, used_var_dtor);
         }
 
+ /* Check parameters */
+# if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 1) || PHP_MAJOR_VERSION >= 6
+ for (i = 0; i < fse->varc; i++) {
+ if (fse->var[i].name) {
+ xdebug_hash_update(fse->used_vars, fse->var[i].name, strlen(fse->var[i].name), xdstrdup(fse->var[i].name));
+ }
+ }
+# endif
+
+ /* opcode scanning time */
         while (i < j) {
 # if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 1) || PHP_MAJOR_VERSION >= 6
                 char *cv = NULL;
@@ -1166,7 +1207,6 @@
                         cv = zend_get_compiled_variable_name(op_array, op_array->opcodes[i].op2.u.var, &cv_len);
                         xdebug_hash_update(fse->used_vars, cv, cv_len, xdstrdup(cv));
                 }
- /* FIXME: Add support for function arguments too */
 #else
                 if (op_array->opcodes[i].opcode == ZEND_FETCH_R || op_array->opcodes[i].opcode == ZEND_FETCH_W) {
                         if (op_array->opcodes[i].op1.op_type == IS_CONST) {
@@ -1608,22 +1648,27 @@
         zvar = xdebug_get_php_symbol(name, strlen(name) + 1);
         XG(active_symbol_table) = tmp_ht;
 
+ if (html) {
+ formats = html_formats;
+ } else {
+ formats = text_formats;
+ }
+
         if (!zvar) {
+ xdebug_str_add(str, xdebug_sprintf(formats[9], name), 1);
                 return;
         }
 
         if (html) {
- formats = html_formats;
                 contents = get_zval_value_fancy(NULL, zvar, &len, 0, NULL TSRMLS_CC);
         } else {
- formats = text_formats;
                 contents = get_zval_value(zvar, 0, NULL);
         }
 
         if (contents) {
                 xdebug_str_add(str, xdebug_sprintf(formats[8], name, contents), 1);
         } else {
- xdebug_str_add(str, xdebug_sprintf(formats[9], name), 1);;
+ xdebug_str_add(str, xdebug_sprintf(formats[9], name), 1);
         }
 
         xdfree(contents);
@@ -1724,7 +1769,7 @@
 
                         /* Printing vars */
                         for (j = 0; j < i->varc; j++) {
- char *tmp_varname, *tmp_value, *tmp_fancy_value, *tmp_fancy_synop_value;
+ char *tmp_value, *tmp_fancy_value, *tmp_fancy_synop_value;
                                 int newlen;
 
                                 if (c) {
@@ -1732,21 +1777,24 @@
                                 } else {
                                         c = 1;
                                 }
- tmp_varname = i->var[j].name ? xdebug_sprintf("$%s = ", i->var[j].name) : xdstrdup("");
+
                                 if (html) {
                                         tmp_value = get_zval_value(i->var[j].addr, 0, NULL);
                                         tmp_fancy_value = xmlize(tmp_value, strlen(tmp_value), &newlen);
- tmp_fancy_synop_value = get_zval_synopsis_fancy(tmp_varname, i->var[j].addr, &len, 0, NULL TSRMLS_CC);
+ tmp_fancy_synop_value = get_zval_synopsis_fancy("", i->var[j].addr, &len, 0, NULL TSRMLS_CC);
                                         xdebug_str_add(&str, xdebug_sprintf("<span title='%s'>%s</span>", tmp_fancy_value, tmp_fancy_synop_value), 1);
                                         xdfree(tmp_value);
                                         efree(tmp_fancy_value);
                                         xdfree(tmp_fancy_synop_value);
                                 } else {
                                         tmp_value = get_zval_synopsis(i->var[j].addr, 0, NULL);
- xdebug_str_add(&str, xdebug_sprintf("%s%s", tmp_varname, tmp_value), 1);
- xdfree(tmp_value);
+ if (tmp_value) {
+ xdebug_str_add(&str, xdebug_sprintf("%s", tmp_value), 1);
+ xdfree(tmp_value);
+ } else {
+ xdebug_str_addl(&str, "???", 3, 0);
+ }
                                 }
- xdfree(tmp_varname);
                         }
 
                         if (i->include_filename) {
@@ -1857,10 +1905,10 @@
                 } else {
                         c = 1;
                 }
-
+/*
                 tmp_varname = i->var[j].name ? xdebug_sprintf("$%s = ", i->var[j].name) : xdstrdup("");
                 xdebug_str_add(&str, tmp_varname, 1);
-
+*/
                 tmp_value = get_zval_value(i->var[j].addr, 0, NULL);
                 if (tmp_value) {
                         xdebug_str_add(&str, tmp_value, 1);
@@ -2294,6 +2342,7 @@
                 xdebug_hash_apply(i->used_vars, (void *) return_value, attach_used_var_names);
         }
         /* Add params */
+#if 0
         if (i->var) {
                 for (j = 0; j < i->varc; j++) {
                         if (i->var[j].name) {
@@ -2301,6 +2350,7 @@
                         }
                 }
         }
+#endif
 }
 /* }}} */
 

[FILE: /xdebug/xdebug_var.c]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- xdebug/xdebug_var.c:1.80 Tue Dec 19 16:54:19 2006 GMT
+++ xdebug/xdebug_var.c Fri Dec 22 12:51:03 2006 GMT
@@ -128,11 +128,16 @@
         xdebug_var_export_options *options;
         options = xdmalloc(sizeof(xdebug_var_export_options));
 
- options->max_children = 1024; /* XG(display_max_children); */
+ options->max_children = XG(display_max_children);
         options->max_data = XG(display_max_data);
         options->max_depth = XG(display_max_depth);
         options->show_hidden = 0;
- options->runtime = NULL;
+
+ if (options->max_children == -1) {
+ options->max_children = 1048576;
+ } else if (options->max_children < 1) {
+ options->max_children = 1;
+ }
 
         if (options->max_data == -1) {
                 options->max_data = 1073741824;
@@ -141,11 +146,13 @@
         }
 
         if (options->max_depth == -1) {
- options->max_depth = 65536;
+ options->max_depth = 4096;
         } else if (options->max_depth < 0) {
                 options->max_depth = 0;
         }
 
+ options->runtime = (xdebug_var_runtime_page*) xdmalloc((options->max_depth + 1) * sizeof(xdebug_var_runtime_page));
+
         return options;
 }
 
@@ -172,26 +179,34 @@
         debug_zval = va_arg(args, int);
         options = va_arg(args, xdebug_var_export_options*);
 
- if (hash_key->nKeyLength==0) { /* numeric key */
- xdebug_str_add(str, xdebug_sprintf("%ld => ", hash_key->h), 1);
- } else { /* string key */
- int newlen = 0;
- char *tmp, *tmp2;
-
- tmp = php_str_to_str(hash_key->arKey, hash_key->nKeyLength, "'", 1, "\\'", 2, &newlen);
- tmp2 = php_str_to_str(tmp, newlen - 1, "\0", 1, "\\0", 2, &newlen);
- if (tmp) {
- efree(tmp);
- }
- xdebug_str_addl(str, "'", 1, 0);
- if (tmp2) {
- xdebug_str_addl(str, tmp2, newlen, 0);
- efree(tmp2);
+ if (options->runtime[level].current_element_nr >= options->runtime[level].start_element_nr &&
+ options->runtime[level].current_element_nr < options->runtime[level].end_element_nr)
+ {
+ if (hash_key->nKeyLength==0) { /* numeric key */
+ xdebug_str_add(str, xdebug_sprintf("%ld => ", hash_key->h), 1);
+ } else { /* string key */
+ int newlen = 0;
+ char *tmp, *tmp2;
+
+ tmp = php_str_to_str(hash_key->arKey, hash_key->nKeyLength, "'", 1, "\\'", 2, &newlen);
+ tmp2 = php_str_to_str(tmp, newlen - 1, "\0", 1, "\\0", 2, &newlen);
+ if (tmp) {
+ efree(tmp);
+ }
+ xdebug_str_addl(str, "'", 1, 0);
+ if (tmp2) {
+ xdebug_str_addl(str, tmp2, newlen, 0);
+ efree(tmp2);
+ }
+ xdebug_str_add(str, "' => ", 0);
                 }
- xdebug_str_add(str, "' => ", 0);
+ xdebug_var_export(zv, str, level + 2, debug_zval, options TSRMLS_CC);
+ xdebug_str_addl(str, ", ", 2, 0);
         }
- xdebug_var_export(zv, str, level + 2, debug_zval, options TSRMLS_CC);
- xdebug_str_addl(str, ", ", 2, 0);
+ if (options->runtime[level].current_element_nr == options->runtime[level].end_element_nr) {
+ xdebug_str_addl(str, "..., ", 5, 0);
+ }
+ options->runtime[level].current_element_nr++;
         return 0;
 }
 
@@ -208,12 +223,20 @@
         debug_zval = va_arg(args, int);
         options = va_arg(args, xdebug_var_export_options*);
 
- if (hash_key->nKeyLength != 0) {
- modifier = xdebug_get_property_info(hash_key->arKey, hash_key->nKeyLength, &prop_name);
- xdebug_str_add(str, xdebug_sprintf("%s $%s = ", modifier, prop_name), 1);
+ if (options->runtime[level].current_element_nr >= options->runtime[level].start_element_nr &&
+ options->runtime[level].current_element_nr < options->runtime[level].end_element_nr)
+ {
+ if (hash_key->nKeyLength != 0) {
+ modifier = xdebug_get_property_info(hash_key->arKey, hash_key->nKeyLength, &prop_name);
+ xdebug_str_add(str, xdebug_sprintf("%s $%s = ", modifier, prop_name), 1);
+ }
+ xdebug_var_export(zv, str, level + 2, debug_zval, options TSRMLS_CC);
+ xdebug_str_addl(str, "; ", 2, 0);
+ }
+ if (options->runtime[level].current_element_nr == options->runtime[level].end_element_nr) {
+ xdebug_str_addl(str, "...; ", 5, 0);
         }
- xdebug_var_export(zv, str, level + 2, debug_zval, options TSRMLS_CC);
- xdebug_str_addl(str, "; ", 2, 0);
+ options->runtime[level].current_element_nr++;
         return 0;
 }
 
@@ -263,7 +286,12 @@
                         if (myht->nApplyCount < 1) {
                                 xdebug_str_addl(str, "array (", 7, 0);
                                 if (level <= options->max_depth) {
+ options->runtime[level].current_element_nr = 0;
+ options->runtime[level].start_element_nr = 0;
+ options->runtime[level].end_element_nr = options->max_children;
+
                                         zend_hash_apply_with_arguments(myht, (apply_func_args_t) xdebug_array_element_export, 4, level, str, debug_zval, options);
+ /* Remove the ", " at the end of the string */
                                         if (myht->nNumOfElements > 0) {
                                                 xdebug_str_chop(str, 2);
                                         }
@@ -281,7 +309,12 @@
                         if (myht->nApplyCount < 1) {
                                 xdebug_str_add(str, xdebug_sprintf("class %s { ", Z_OBJCE_PP(struc)->name), 1);
                                 if (level <= options->max_depth) {
+ options->runtime[level].current_element_nr = 0;
+ options->runtime[level].start_element_nr = 0;
+ options->runtime[level].end_element_nr = options->max_children;
+
                                         zend_hash_apply_with_arguments(myht, (apply_func_args_t) xdebug_object_element_export, 4, level, str, debug_zval, options);
+ /* Remove the ", " at the end of the string */
                                         if (myht->nNumOfElements > 0) {
                                                 xdebug_str_chop(str, 2);
                                         }
@@ -795,15 +828,23 @@
         debug_zval = va_arg(args, int);
         options = va_arg(args, xdebug_var_export_options*);
 
- xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
+ if (options->runtime[level].current_element_nr >= options->runtime[level].start_element_nr &&
+ options->runtime[level].current_element_nr < options->runtime[level].end_element_nr)
+ {
+ xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
 
- if (hash_key->nKeyLength==0) { /* numeric key */
- xdebug_str_add(str, xdebug_sprintf("%ld <font color='%s'>=&gt;</font> ", hash_key->h, COLOR_POINTER), 1);
- } else { /* string key */
- xdebug_str_add(str, xdebug_sprintf("'%s' <font color='%s'>=&gt;</font> ", hash_key->arKey, COLOR_POINTER), 1);
+ if (hash_key->nKeyLength==0) { /* numeric key */
+ xdebug_str_add(str, xdebug_sprintf("%ld <font color='%s'>=&gt;</font> ", hash_key->h, COLOR_POINTER), 1);
+ } else { /* string key */
+ xdebug_str_add(str, xdebug_sprintf("'%s' <font color='%s'>=&gt;</font> ", hash_key->arKey, COLOR_POINTER), 1);
+ }
+ xdebug_var_export_fancy(zv, str, level + 1, debug_zval, options TSRMLS_CC);
         }
- xdebug_var_export_fancy(zv, str, level + 1, debug_zval, options TSRMLS_CC);
-
+ if (options->runtime[level].current_element_nr == options->runtime[level].end_element_nr) {
+ xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
+ xdebug_str_addl(str, "<i>more elements...</i>\n", 24, 0);
+ }
+ options->runtime[level].current_element_nr++;
         return 0;
 }
 
@@ -821,14 +862,23 @@
         debug_zval = va_arg(args, int);
         options = va_arg(args, xdebug_var_export_options*);
 
- xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
+ if (options->runtime[level].current_element_nr >= options->runtime[level].start_element_nr &&
+ options->runtime[level].current_element_nr < options->runtime[level].end_element_nr)
+ {
+ xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
 
- key = hash_key->arKey;
- if (hash_key->nKeyLength != 0) {
- modifier = xdebug_get_property_info(hash_key->arKey, hash_key->nKeyLength, &prop_name);
- xdebug_str_add(str, xdebug_sprintf("<i>%s</i> '%s' <font color='%s'>=&gt;</font> ", modifier, prop_name, COLOR_POINTER), 1);
+ key = hash_key->arKey;
+ if (hash_key->nKeyLength != 0) {
+ modifier = xdebug_get_property_info(hash_key->arKey, hash_key->nKeyLength, &prop_name);
+ xdebug_str_add(str, xdebug_sprintf("<i>%s</i> '%s' <font color='%s'>=&gt;</font> ", modifier, prop_name, COLOR_POINTER), 1);
+ }
+ xdebug_var_export_fancy(zv, str, level + 1, debug_zval, options TSRMLS_CC);
+ }
+ if (options->runtime[level].current_element_nr == options->runtime[level].end_element_nr) {
+ xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
+ xdebug_str_addl(str, "<i>more elements...</i>\n", 24, 0);
         }
- xdebug_var_export_fancy(zv, str, level + 1, debug_zval, options TSRMLS_CC);
+ options->runtime[level].current_element_nr++;
         return 0;
 }
 
@@ -885,6 +935,10 @@
                                 xdebug_str_addl(str, "<b>array</b>\n", 13, 0);
                                 if (level <= options->max_depth) {
                                         if (myht->nNumOfElements) {
+ options->runtime[level].current_element_nr = 0;
+ options->runtime[level].start_element_nr = 0;
+ options->runtime[level].end_element_nr = options->max_children;
+
                                                 zend_hash_apply_with_arguments(myht, (apply_func_args_t) xdebug_array_element_export_fancy, 4, level, str, debug_zval, options);
                                         } else {
                                                 xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);
@@ -910,6 +964,10 @@
                                 xdebug_str_addl(str, "\n", 1, 0);
 #endif
                                 if (level <= options->max_depth) {
+ options->runtime[level].current_element_nr = 0;
+ options->runtime[level].start_element_nr = 0;
+ options->runtime[level].end_element_nr = options->max_children;
+
                                         zend_hash_apply_with_arguments(myht, (apply_func_args_t) xdebug_object_element_export_fancy, 4, level, str, debug_zval, options);
                                 } else {
                                         xdebug_str_add(str, xdebug_sprintf("%*s", (level * 4) - 2, ""), 1);

[FILE: /xdebug/tests/array_map.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- xdebug/tests/array_map.phpt:1.11 Mon Jan 02 15:12:31 2006 GMT
+++ xdebug/tests/array_map.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -11,6 +11,8 @@
 xdebug.profiler_enable=0
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
+xdebug.var_display_max_depth=2
+xdebug.var_display_max_children=3
 --FILE--
 <?php
 $tf = xdebug_start_trace('/tmp/'. uniqid('xdt', TRUE));

[FILE: /xdebug/tests/bug00022.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- xdebug/tests/bug00022.phpt:1.3 Fri Dec 30 13:52:37 2005 GMT
+++ xdebug/tests/bug00022.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -40,7 +40,7 @@
     int(7)
     ["params"]=>
     array(1) {
- [0]=>
+ ["s"]=>
       string(5) "'bar'"
     }
   }

[FILE: /xdebug/tests/bug00032-ze22.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- xdebug/tests/bug00032-ze22.phpt:1.3 Fri Oct 06 12:23:04 2006 GMT
+++ xdebug/tests/bug00032-ze22.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -9,6 +9,7 @@
 xdebug.collect_params=1
 xdebug.profiler_enable=0
 xdebug.show_local_vars=0
+xdebug.dump_globals=0
 --FILE--
 <?php
         ${1} = "foo";

[FILE: /xdebug/tests/bug00089.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- xdebug/tests/bug00089.phpt:1.4 Fri Oct 06 12:23:04 2006 GMT
+++ xdebug/tests/bug00089.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -9,6 +9,7 @@
 xdebug.profiler_enable=0
 xdebug.show_local_vars=0
 html_errors=1
+xdebug.var_display_max_children=3
 --FILE--
 <?php
 var_dump(array(4, array('', 2, 'node'), false));
@@ -16,11 +17,11 @@
 --EXPECT--
 <pre>
 <b>array</b>
- 0 <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>4</font>
+ 0 <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>4</font>
   1 <font color='#888a85'>=&gt;</font>
     <b>array</b>
- 0 <font color='#888a85'>=&gt;</font> <font color='#cc0000'>''</font> <i>(length=0)</i>
- 1 <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>2</font>
- 2 <font color='#888a85'>=&gt;</font> <font color='#cc0000'>'node'</font> <i>(length=4)</i>
- 2 <font color='#888a85'>=&gt;</font> <font color='#75507b'>false</font>
+ 0 <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>''</font> <i>(length=0)</i>
+ 1 <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>2</font>
+ 2 <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'node'</font> <i>(length=4)</i>
+ 2 <font color='#888a85'>=&gt;</font> <small>boolean</small> <font color='#75507b'>false</font>
 </pre>

[FILE: /xdebug/tests/bug00173.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- xdebug/tests/bug00173.phpt:1.3 Mon Oct 23 18:30:59 2006 GMT
+++ xdebug/tests/bug00173.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -12,6 +12,7 @@
 xdebug.dump_globals=0
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
+xdebug.show_local_vars=1
 --FILE--
 <?php
         $trace_file = xdebug_get_tracefile_name();

[FILE: /xdebug/tests/bug00184.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xdebug/tests/bug00184.phpt:1.2 Sat Aug 19 10:29:08 2006 GMT
+++ xdebug/tests/bug00184.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -12,6 +12,8 @@
 xdebug.dump_globals=0
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
+xdebug.var_display_max_depth=2
+xdebug.var_display_max_children=33
 --FILE--
 <?php
         $trace_file = xdebug_get_tracefile_name();

[FILE: /xdebug/tests/get_declared_vars.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- xdebug/tests/get_declared_vars.phpt:1.4 Tue Sep 05 12:46:20 2006 GMT
+++ xdebug/tests/get_declared_vars.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -52,7 +52,11 @@
         register_shutdown_function('s');
 ?>
 --EXPECTF--
-array(0) {
+array(2) {
+ [0]=>
+ string(1) "a"
+ [1]=>
+ string(1) "b"
 }
 5252
 array(2) {
@@ -69,13 +73,15 @@
   string(1) "b"
 }
 1
-array(3) {
+array(4) {
   [0]=>
   string(1) "d"
   [1]=>
   string(1) "a"
   [2]=>
   string(1) "c"
+ [3]=>
+ string(1) "b"
 }
 4254
 array(2) {

[FILE: /xdebug/tests/test1.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- xdebug/tests/test1.phpt:1.18 Mon Jan 02 15:12:31 2006 GMT
+++ xdebug/tests/test1.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -10,6 +10,8 @@
 xdebug.profiler_enable=0
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
+xdebug.var_display_max_depth=1
+xdebug.var_display_max_children=3
 --FILE--
 <?php
         $tf = xdebug_start_trace('/tmp/'. uniqid('xdt', TRUE));

[FILE: /xdebug/tests/test12.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- xdebug/tests/test12.phpt:1.15 Fri Sep 29 08:07:17 2006 GMT
+++ xdebug/tests/test12.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -12,6 +12,7 @@
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
 xdebug.var_display_max_depth=3
+xdebug.var_display_max_children=6
 --FILE--
 <?php
         $tf = xdebug_start_trace('/tmp/'. uniqid('xdt', TRUE));

[FILE: /xdebug/tests/test6.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- xdebug/tests/test6.phpt:1.17 Sat Oct 07 21:10:33 2006 GMT
+++ xdebug/tests/test6.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -10,6 +10,7 @@
 xdebug.show_mem_delta=0
 xdebug.profiler_enable=0
 xdebug.var_display_max_depth=3
+xdebug.var_display_max_children=3
 --FILE--
 <?php
         function foo2 ($a, $b, $c)
@@ -24,22 +25,23 @@
 
 Call Stack:
 %w%f %w%d 1. {main}() /%s/test6.php:0
-%w%f %w%d 2. foo2(long, array (1)) /%s/test6.php:7
+%w%f %w%d 2. foo2(long, array(1), ???) /%s/test6.php:7
 
 
-Variables in local scope:
+Variables in local scope (#2):
   $a = 4
- $c = NULL
+ $c = *uninitialized*
   $b = array (0 => array (0 => 'blaat', 1 => 5, 2 => FALSE))
 
+
 Fatal error: Call to undefined function%sfoo() in /%s/test6.php on line 4
 
 Call Stack:
 %w%f %w%d 1. {main}() /%s/test6.php:0
-%w%f %w%d 2. foo2(long, array(1)) /%s/test6.php:7
+%w%f %w%d 2. foo2(long, array(1), ???) /%s/test6.php:7
 
 
-Variables in local scope:
+Variables in local scope (#2):
   $a = 4
- $c = NULL
+ $c = *uninitialized*
   $b = array (0 => array (0 => 'blaat', 1 => 5, 2 => FALSE))

[FILE: /xdebug/tests/test8.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- xdebug/tests/test8.phpt:1.17 Fri Sep 29 08:07:17 2006 GMT
+++ xdebug/tests/test8.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -12,6 +12,7 @@
 xdebug.show_mem_delta=0
 xdebug.trace_format=0
 xdebug.var_display_max_depth=5
+xdebug.var_display_max_children=4
 --FILE--
 <?php
 $tf = xdebug_start_trace('/tmp/'. uniqid('xdt', TRUE));

[FILE: /xdebug/tests/xdebug_var_dump.phpt]

===================================================================
RCS file: cvstemp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- xdebug/tests/xdebug_var_dump.phpt:1.5 Fri Oct 06 12:23:04 2006 GMT
+++ xdebug/tests/xdebug_var_dump.phpt Fri Dec 22 12:51:03 2006 GMT
@@ -9,6 +9,7 @@
 xdebug.profiler_enable=0
 html_errors=1
 date.timezone=Europe/Oslo
+xdebug.var_display_max_children=11
 --FILE--
 <?php
         class TimeStuff {
@@ -35,22 +36,22 @@
 --EXPECT--
 <pre>
 <b>object</b>(<i>TimeStuff</i>)[<i>1</i>]
- <i>private</i> 'timestamp' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>1092515106</font>
- <i>private</i> 'user_defined' <font color='#888a85'>=&gt;</font> <font color='#75507b'>true</font>
+ <i>private</i> 'timestamp' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>1092515106</font>
+ <i>private</i> 'user_defined' <font color='#888a85'>=&gt;</font> <small>boolean</small> <font color='#75507b'>true</font>
   <i>private</i> 'self' <font color='#888a85'>=&gt;</font>
     <i>&</i><b>object</b>(<i>TimeStuff</i>)[<i>1</i>]
   <i>protected</i> 'tm' <font color='#888a85'>=&gt;</font>
     <b>array</b>
- 'seconds' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>6</font>
- 'minutes' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>25</font>
- 'hours' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>22</font>
- 'mday' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>14</font>
- 'wday' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>6</font>
- 'mon' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>8</font>
- 'year' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>2004</font>
- 'yday' <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>226</font>
- 'weekday' <font color='#888a85'>=&gt;</font> <font color='#cc0000'>'Saturday'</font> <i>(length=8)</i>
- 'month' <font color='#888a85'>=&gt;</font> <font color='#cc0000'>'August'</font> <i>(length=6)</i>
- 0 <font color='#888a85'>=&gt;</font> <font color='#4e9a06'>1092515106</font>
- <i>public</i> 'date' <font color='#888a85'>=&gt;</font> <font color='#cc0000'>'2004-08-14 22:25:06 CEST'</font> <i>(length=24)</i>
+ 'seconds' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>6</font>
+ 'minutes' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>25</font>
+ 'hours' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>22</font>
+ 'mday' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>14</font>
+ 'wday' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>6</font>
+ 'mon' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>8</font>
+ 'year' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>2004</font>
+ 'yday' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>226</font>
+ 'weekday' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'Saturday'</font> <i>(length=8)</i>
+ 'month' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'August'</font> <i>(length=6)</i>
+ 0 <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>1092515106</font>
+ <i>public</i> 'date' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'2004-08-14 22:25:06 CEST'</font> <i>(length=24)</i>
 </pre>
Received on Fri Dec 22 2006 - 14:51:21 GMT

This archive was generated by hypermail 2.2.0 : Sun Jun 24 2018 - 04:00:03 BST