[Freeswitch-svn] [commit] r9269 - in freeswitch/trunk/libs/sofia-sip: . libsofia-sip-ua/su/sofia-sip
Freeswitch SVN
mikej at freeswitch.org
Tue Aug 12 13:04:16 EDT 2008
Author: mikej
Date: Tue Aug 12 13:04:16 2008
New Revision: 9269
Modified:
freeswitch/trunk/libs/sofia-sip/.update
freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/su/sofia-sip/su_tagarg.h
Log:
Thu Jul 24 13:02:17 EDT 2008 Pekka Pessi <first.last at nokia.com>
* sofia-sip/su_tagarg.h: if va_copy is missing, fall back to __va_copy or memcpy
Modified: freeswitch/trunk/libs/sofia-sip/.update
==============================================================================
--- freeswitch/trunk/libs/sofia-sip/.update (original)
+++ freeswitch/trunk/libs/sofia-sip/.update Tue Aug 12 13:04:16 2008
@@ -1 +1 @@
-Tue Aug 12 13:03:36 EDT 2008
+Tue Aug 12 13:04:10 EDT 2008
Modified: freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/su/sofia-sip/su_tagarg.h
==============================================================================
--- freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/su/sofia-sip/su_tagarg.h (original)
+++ freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/su/sofia-sip/su_tagarg.h Tue Aug 12 13:04:16 2008
@@ -82,6 +82,14 @@
va_list ap;
} ta_list;
+#if defined(va_copy)
+#define su_va_copy(dst, src) va_copy((dst), (src))
+#elif defined(__va_copy)
+#define su_va_copy(dst, src) __va_copy((dst), (src))
+#else
+#define su_va_copy(dst, src) (memcpy(&(dst), &(src), sizeof (va_list)))
+#endif
+
/**Macro initializing a ta_list object.
*
* The ta_start() macro initializes @a ta for subsequent use by ta_args(),
@@ -143,7 +151,7 @@
ta_start__tag != tag_null && \
ta_start__tag != tag_next) { \
va_list ta_start__ap; \
- va_copy(ta_start__ap, (ta).ap); \
+ su_va_copy(ta_start__ap, (ta).ap); \
(ta).tl[1].t_tag = tag_next; \
(ta).tl[1].t_value = (tag_value_t)tl_vlist(ta_start__ap); \
va_end(ta_start__ap); \
More information about the Freeswitch-svn
mailing list