diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2013-08-29 11:19:02 +0400 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2013-08-29 11:19:02 +0400 |
| commit | 0f3977bc0fd31ee188ee50f44b130420812b93a9 (patch) | |
| tree | f8529a9a9001e6fccdc221994399a27d880d7ef3 /Zend/zend_API.c | |
| parent | 94816ed9bfe16bd1507a1abc708793e41c06ad79 (diff) | |
| parent | dfc6feb6e84f27094e6a2e3947caa094f7c35d26 (diff) | |
| download | php-git-0f3977bc0fd31ee188ee50f44b130420812b93a9.tar.gz | |
Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
Fixed bug #61759 (class_alias() should accept classes with leading backslashes). (Julien)
Fixed bug #61759 (class_alias() should accept classes with leading backslashes). (Julien)
Conflicts:
NEWS
Diffstat (limited to 'Zend/zend_API.c')
| -rw-r--r-- | Zend/zend_API.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 7fd3a8adbb..b59faab284 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -2577,7 +2577,12 @@ ZEND_API int zend_register_class_alias_ex(const char *name, int name_len, zend_c char *lcname = zend_str_tolower_dup(name, name_len); int ret; - ret = zend_hash_add(CG(class_table), lcname, name_len+1, &ce, sizeof(zend_class_entry *), NULL); + if (lcname[0] == '\\') { + ret = zend_hash_add(CG(class_table), lcname+1, name_len, &ce, sizeof(zend_class_entry *), NULL); + } else { + ret = zend_hash_add(CG(class_table), lcname, name_len+1, &ce, sizeof(zend_class_entry *), NULL); + } + efree(lcname); if (ret == SUCCESS) { ce->refcount++; |
