[Tinyos-commits] CVS: tinyos-1.x/tos/types dbg.h,1.4,1.5

Phil Levis scipio at users.sourceforge.net
Mon Nov 14 17:24:30 PST 2005


Update of /cvsroot/tinyos/tinyos-1.x/tos/types
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16622

Modified Files:
	dbg.h 
Log Message:
Need to properly pair va_start and va_end.

I have no idea how this possibly worked before. I found that on 
my x86_64 it failed (format arguments were not filled in on
stdout path), most probably due to an alternative implementation.



Index: dbg.h
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/tos/types/dbg.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** dbg.h	14 Apr 2004 20:44:00 -0000	1.4
--- dbg.h	15 Nov 2005 01:24:28 -0000	1.5
***************
*** 96,105 ****
      va_list args;
      // XXX MDW - used to be printf 
-     va_start(args, format); 
      if (!(mode & DBG_SIM)) {
        vsnprintf(ev.debugMessage, sizeof(ev.debugMessage), format, args);
        sendTossimEvent(NODE_NUM, AM_DEBUGMSGEVENT, tos_state.tos_time, &ev);
      }
      if (! dbg_suppress_stdout) {
        // XXX MDW - used to be vprintf 
        fprintf(stdout, "%i: ", NODE_NUM);
--- 96,107 ----
      va_list args;
      // XXX MDW - used to be printf 
      if (!(mode & DBG_SIM)) {
+       va_start(args, format); 
        vsnprintf(ev.debugMessage, sizeof(ev.debugMessage), format, args);
        sendTossimEvent(NODE_NUM, AM_DEBUGMSGEVENT, tos_state.tos_time, &ev);
+       va_end(args);
      }
      if (! dbg_suppress_stdout) {
+       va_start(args, format); 
        // XXX MDW - used to be vprintf 
        fprintf(stdout, "%i: ", NODE_NUM);
***************
*** 115,124 ****
    if (dbg_active(mode)) {
      va_list args;
-     va_start(args, format);
      if (!(mode & DBG_SIM)) {
        vsnprintf(ev.debugMessage, sizeof(ev.debugMessage), format, args);
        sendTossimEvent(NODE_NUM, AM_DEBUGMSGEVENT, tos_state.tos_time, &ev);
      }
      if (! dbg_suppress_stdout) {
        // XXX MDW - used to be vprintf 
        vfprintf(stdout, format, args);
--- 117,128 ----
    if (dbg_active(mode)) {
      va_list args;
      if (!(mode & DBG_SIM)) {
+       va_start(args, format);
        vsnprintf(ev.debugMessage, sizeof(ev.debugMessage), format, args);
        sendTossimEvent(NODE_NUM, AM_DEBUGMSGEVENT, tos_state.tos_time, &ev);
+       va_end(args);
      }
      if (! dbg_suppress_stdout) {
+       va_start(args, format);      
        // XXX MDW - used to be vprintf 
        vfprintf(stdout, format, args);



More information about the Tinyos-commits mailing list