From df9e189efe631ab3fcdcf3350185332c1c00a6c4 Mon Sep 17 00:00:00 2001
From: mifi <mifi@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Date: Thu, 14 Feb 2008 18:30:23 +0000
Subject: [PATCH] =?UTF-8?q?-=20added=20patch=20to=20stop=20DEBUG=20message?=
 =?UTF-8?q?s=20to=20be=20forwarded=20to=20telnet/gdb.=20(thanks=20to=20?=
 =?UTF-8?q?=C3=98yvind=20for=20the=20patch)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

git-svn-id: svn://svn.berlios.de/openocd/trunk@295 b42882b7-edfa-0310-969c-e2dbd0fdcd60
---
 src/helper/log.c | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/src/helper/log.c b/src/helper/log.c
index db0bc0bd6..ed0bf16db 100644
--- a/src/helper/log.c
+++ b/src/helper/log.c
@@ -28,6 +28,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <stdarg.h>
+#include <time.h>
 
 int debug_level = -1;
 
@@ -53,6 +54,8 @@ static char *log_strings[4] =
 
 void log_printf(enum log_levels level, const char *file, int line, const char *function, const char *format, ...)
 {
+	static int count=0;
+	count++;
 	va_list args;
 	char buffer[512];
 
@@ -62,19 +65,25 @@ void log_printf(enum log_levels level, const char *file, int line, const char *f
 	va_start(args, format);
 	vsnprintf(buffer, 512, format, args);
 
-	fprintf(log_output, "%s %s:%d %s(): %s\n", log_strings[level], file, line, function, buffer);
+	char *f=strrchr(file, '/');
+	if (f!=NULL)
+		file=f+1;
+
+	fprintf(log_output, "%s %d %d %s:%d %s(): %s\n", log_strings[level], count, time(NULL), file, line, function, buffer);
 	fflush(log_output);
 	
 	va_end(args);
 
-	if (callback)
-{
-	va_start(args, format);
+	/* Never forward LOG_DEBUG, too verbose and they can be found in the log if need be */
+	if (callback&&(level<=LOG_INFO))
+
+	{
+		va_start(args, format);
 
 		callback(privData, file, line, function, format, args);
 
-	va_end(args);
-}
+		va_end(args);
+	}
 
 }
 
-- 
GitLab