Make sure we reinitialize the va_list since va_list is undefined
if a function traverses the va_list with va_arg.

This patch fixes the uDAT debugging case when both stdout and
syslog output is wanted.

Signed-off-by: Patrick Marchand Latifi <[EMAIL PROTECTED]>
---

 dat/udat/linux/dat_osd.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dat/udat/linux/dat_osd.c b/dat/udat/linux/dat_osd.c
index e49c489..bc66828 100644
--- a/dat/udat/linux/dat_osd.c
+++ b/dat/udat/linux/dat_osd.c
@@ -116,20 +116,20 @@ dat_os_dbg_print (
     {
        va_list args;
 
-       va_start (args, fmt);
-
        if ( DAT_OS_DBG_DEST_STDOUT & g_dbg_dest )
        {
+           va_start (args, fmt);
            vfprintf (stdout, fmt, args);
            fflush (stdout);
+           va_end (args);
        }
 
        if ( DAT_OS_DBG_DEST_SYSLOG & g_dbg_dest )
        {
+           va_start (args, fmt);
            vsyslog (LOG_USER | LOG_DEBUG, fmt, args);
+           va_end (args);
        }
-
-       va_end (args);
     }
 }
 

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to