From: Sascha Schumann Date: Wed, 27 Sep 2000 15:24:09 +0000 (+0000) Subject: Clean up STR_CAT macro (it is still ugly) X-Git-Tag: php-4.0.3RC1~52 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5bf4e7857d30cceb4c79bd8bb2ebbfdb7dbedeed;p=php Clean up STR_CAT macro (it is still ugly) --- diff --git a/ext/session/session.c b/ext/session/session.c index 3416985fe0..33d36d17af 100644 --- a/ext/session/session.c +++ b/ext/session/session.c @@ -169,14 +169,9 @@ typedef struct { #define STR_CAT(P,S,I) {\ pval *__p = (P);\ size_t __l = (I);\ - ulong __i = Z_STRLEN_P(__p);\ - Z_STRLEN_P(__p) += __l;\ - if (Z_STRVAL_P(__p)) {\ - Z_STRVAL_P(__p) = (char *)erealloc(Z_STRVAL_P(__p), Z_STRLEN_P(__p) + 1);\ - } else {\ - Z_STRVAL_P(__p) = emalloc(Z_STRLEN_P(__p) + 1);\ - *Z_STRVAL_P(__p) = 0;\ - }\ + ulong __i = Z_STRLEN_P(__p);\ + Z_STRLEN_P(__p) += __l;\ + Z_STRVAL_P(__p) = (char *)erealloc(Z_STRVAL_P(__p), Z_STRLEN_P(__p) + 1);\ memcpy(Z_STRVAL_P(__p) + __i, (S), __l); \ Z_STRVAL_P(__p)[Z_STRLEN_P(__p)] = '\0'; \ }