[libpri-commits] trunk r346 - /trunk/q931.c
libpri-commits at lists.digium.com
libpri-commits at lists.digium.com
Fri Jun 2 07:34:20 MST 2006
Author: mattf
Date: Fri Jun 2 09:34:20 2006
New Revision: 346
URL: http://svn.digium.com/view/libpri?rev=346&view=rev
Log:
Fix for 7115. Don't call pri_message multiple times
Modified:
trunk/q931.c
Modified: trunk/q931.c
URL: http://svn.digium.com/view/libpri/trunk/q931.c?rev=346&r1=345&r2=346&view=diff
==============================================================================
--- trunk/q931.c (original)
+++ trunk/q931.c Fri Jun 2 09:34:20 2006
@@ -2119,15 +2119,17 @@
unsigned int x;
int full_ie = Q931_FULL_IE(codeset, ie->ie);
int base_ie;
-
- pri_message(pri, "%c [", prefix);
- pri_message(pri, "%02x", ie->ie);
+ char *buf = malloc(ielen(ie) * 3 + 1);
+ int buflen = 0;
+
+ buf[0] = '\0';
if (!(ie->ie & 0x80)) {
- pri_message(pri, " %02x", ielen(ie)-2);
+ buflen += sprintf(buf, " %02x", ielen(ie)-2);
for (x = 0; x + 2 < ielen(ie); ++x)
- pri_message(pri, " %02x", ie->data[x]);
- }
- pri_message(pri, "]\n");
+ buflen += sprintf(buf + buflen, " %02x", ie->data[x]);
+ }
+ pri_message(pri, "%c [%02x%s]\n", prefix, ie->ie, buf);
+ free(buf);
/* Special treatment for shifts */
if((full_ie & 0xf0) == Q931_LOCKING_SHIFT)
More information about the libpri-commits
mailing list