From 3b31fc37af23c0e21791a6c9b813a3aa7a10072b Mon Sep 17 00:00:00 2001 From: tilghman Date: Tue, 2 Dec 2008 00:58:43 +0000 Subject: Merged revisions 160208 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r160208 | tilghman | 2008-12-01 18:37:21 -0600 (Mon, 01 Dec 2008) | 10 lines Merged revisions 160207 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r160207 | tilghman | 2008-12-01 18:25:16 -0600 (Mon, 01 Dec 2008) | 3 lines Ensure that Asterisk builds with --enable-dev-mode, even on the latest gcc and glibc. ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@160234 f38db490-d61c-443f-a65b-d21fe96a405b --- include/asterisk/stringfields.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/asterisk/stringfields.h b/include/asterisk/stringfields.h index 4b1847415..20597a591 100644 --- a/include/asterisk/stringfields.h +++ b/include/asterisk/stringfields.h @@ -255,12 +255,16 @@ int __ast_string_field_init(struct ast_string_field_mgr *mgr, const char *__d__ = (data); \ size_t __dlen__ = (__d__) ? strlen(__d__) + 1 : 1; \ const char **__p__ = (const char **) (ptr); \ + char *__q__; \ if (__dlen__ == 1) \ *__p__ = __ast_string_field_empty; \ - else if (!__ast_string_field_ptr_grow(&(x)->__field_mgr, __dlen__, ptr)) \ - memcpy((char *) *__p__, __d__, __dlen__); \ - else if ((*__p__ = __ast_string_field_alloc_space(&(x)->__field_mgr, &(x)->__field_mgr_pool, __dlen__))) \ - memcpy((char *) *__p__, __d__, __dlen__); \ + else if (!__ast_string_field_ptr_grow(&(x)->__field_mgr, __dlen__, ptr)) { \ + __q__ = (char *) *__p__; \ + memcpy(__q__, __d__, __dlen__); \ + } else if ((*__p__ = __ast_string_field_alloc_space(&(x)->__field_mgr, &(x)->__field_mgr_pool, __dlen__))) { \ + __q__ = (char *) *__p__; \ + memcpy(__q__, __d__, __dlen__); \ + } \ } while (0) /*! -- cgit v1.2.3