summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/standard/string.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/standard/string.c b/ext/standard/string.c
index 089f642876..221e0b2357 100644
--- a/ext/standard/string.c
+++ b/ext/standard/string.c
@@ -1560,6 +1560,11 @@ PHP_FUNCTION(strtr)
convert_to_string_ex(str);
+ /* shortcut for empty string */
+ if(Z_STRLEN_PP(str) == 0) {
+ RETURN_EMPTY_STRING();
+ }
+
if (ac == 2) {
php_strtr_array(return_value,(*str)->value.str.val,(*str)->value.str.len,HASH_OF(*from));
} else {