cvs: php4 /ext/standard php_smart_str.h

From: Date: Thu, 26 Oct 2000 18:01:51 +0000
Subject: cvs: php4 /ext/standard php_smart_str.h
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-2268@lists.php.net to get a copy of this message
sas Thu Oct 26 11:01:51 2000 EDT Modified files: /php4/ext/standard php_smart_str.h Log: Make the API more leaner (sp?) and get rid of *copy*. Index: php4/ext/standard/php_smart_str.h diff -u php4/ext/standard/php_smart_str.h:1.2 php4/ext/standard/php_smart_str.h:1.3 --- php4/ext/standard/php_smart_str.h:1.2 Wed Oct 11 17:48:12 2000 +++ php4/ext/standard/php_smart_str.h Thu Oct 26 11:01:51 2000 @@ -24,6 +24,7 @@ #define smart_str_0(x) ((x)->c[(x)->len] = '\0') #define smart_str_alloc(d,n) {\ + /* if (!d->c) d->len = d->a = 0; */ \ if (n >= d->a) {\ d->c = erealloc(d->c, n + 129); \ d->a = n + 128; \ @@ -32,19 +33,6 @@ #define smart_str_appends(dest, src) smart_str_appendl(dest, src, sizeof(src)-1) -static inline void smart_str_append(smart_str *dest, smart_str *src) -{ - size_t newlen; - - if (!dest->c) - dest->len = dest->a = 0; - - newlen = dest->len + src->len; - smart_str_alloc(dest, newlen); - memcpy(dest->c + dest->len, src->c, src->len); - dest->len = newlen; -} - static inline void smart_str_appendc(smart_str *dest, char c) { ++dest->len; @@ -61,21 +49,19 @@ s->a = s->len = 0; } -static inline void smart_str_copyl(smart_str *dest, const char *src, size_t len) -{ - smart_str_alloc(dest, len); - memcpy(dest->c, src, len); - dest->len = len; -} - static inline void smart_str_appendl(smart_str *dest, const char *src, size_t len) { - smart_str s; + size_t newlen; - s.c = (char *) src; - s.len = len; + newlen = dest->len + len; + smart_str_alloc(dest, newlen); + memcpy(dest->c + dest->len, src, len); + dest->len = newlen; +} - smart_str_append(dest, &s); +static inline void smart_str_append(smart_str *dest, smart_str *src) +{ + smart_str_appendl(dest, src->c, src->len); } static inline void smart_str_setl(smart_str *dest, const char *src, size_t len)

« previous php.cvs (#2268) next »