diff options
author | Marcus Boerger <helly@php.net> | 2006-07-24 23:40:57 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2006-07-24 23:40:57 +0000 |
commit | 5da6415bfece15f513364c06a53f43e2e8630bfb (patch) | |
tree | 40fb25f152057323e79474c397ea649f54e6079b | |
parent | 4da92e63afd65bb117fd6cc3a5ac8cec56bf7417 (diff) | |
download | php-git-5da6415bfece15f513364c06a53f43e2e8630bfb.tar.gz |
- MFH Correctly handle binary proeprty names which are not mangled
-rw-r--r-- | ext/standard/var.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/ext/standard/var.c b/ext/standard/var.c index 990231fe19..f88d4ff39d 100644 --- a/ext/standard/var.c +++ b/ext/standard/var.c @@ -76,8 +76,8 @@ static int php_object_property_dump(zval **zv, int num_args, va_list args, zend_ if (hash_key->nKeyLength ==0 ) { /* numeric key */ php_printf("%*c[%ld]=>\n", level + 1, ' ', hash_key->h); } else { /* string key */ - zend_unmangle_property_name(hash_key->arKey, hash_key->nKeyLength-1, &class_name, &prop_name); - if (class_name) { + int unmangle = zend_unmangle_property_name(hash_key->arKey, hash_key->nKeyLength-1, &class_name, &prop_name); + if (class_name && unmangle == SUCCESS) { php_printf("%*c[\"%s", level + 1, ' ', prop_name); if (class_name[0]=='*') { ZEND_PUTS(":protected"); @@ -85,7 +85,8 @@ static int php_object_property_dump(zval **zv, int num_args, va_list args, zend_ ZEND_PUTS(":private"); } } else { - php_printf("%*c[\"%s", level + 1, ' ', hash_key->arKey); + php_printf("%*c[\"", level + 1, ' '); + PHPWRITE(hash_key->arKey, hash_key->nKeyLength - 1); #ifdef ANDREY_0 ZEND_PUTS(":public"); #endif |