summaryrefslogtreecommitdiff
path: root/Zend/zend_smart_str.h
diff options
context:
space:
mode:
authorNikita Popov <nikic@php.net>2014-09-21 20:47:07 +0200
committerNikita Popov <nikic@php.net>2014-09-21 20:58:31 +0200
commita770d29df74515197c76efdf1a64d9794c27b4af (patch)
treed57e1d6237eace03ca05d459ec8aecbca2b89457 /Zend/zend_smart_str.h
parent2a7de9fdbba28152fadcdddc2b731d319405e106 (diff)
downloadphp-git-a770d29df74515197c76efdf1a64d9794c27b4af.tar.gz
Add smart_str_append for appending zend_strings
Also replaces usages in Zend/ and ext/standard
Diffstat (limited to 'Zend/zend_smart_str.h')
-rw-r--r--Zend/zend_smart_str.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/Zend/zend_smart_str.h b/Zend/zend_smart_str.h
index 501283df31..2724ac7323 100644
--- a/Zend/zend_smart_str.h
+++ b/Zend/zend_smart_str.h
@@ -38,6 +38,8 @@
smart_str_appendc_ex((dest), (c), 0)
#define smart_str_appendl(dest, src, len) \
smart_str_appendl_ex((dest), (src), (len), 0)
+#define smart_str_append(dest, src) \
+ smart_str_append_ex((dest), (src), 0)
#define smart_str_append_smart_str(dest, src) \
smart_str_append_smart_str_ex((dest), (src), 0)
#define smart_str_sets(dest, src) \
@@ -92,9 +94,13 @@ static zend_always_inline void smart_str_appendl_ex(smart_str *dest, const char
dest->s->len = new_len;
}
+static zend_always_inline void smart_str_append_ex(smart_str *dest, const zend_string *src, zend_bool persistent) {
+ smart_str_appendl_ex(dest, src->val, src->len, persistent);
+}
+
static zend_always_inline void smart_str_append_smart_str_ex(smart_str *dest, const smart_str *src, zend_bool persistent) {
if (src->s && src->s->len) {
- smart_str_appendl_ex(dest, src->s->val, src->s->len, persistent);
+ smart_str_append_ex(dest, src->s, persistent);
}
}