From: Jukka Rissanen Date: Thu, 18 Oct 2012 11:35:19 +0000 (+0300) Subject: web: Make debug func print more useful information X-Git-Tag: 1.9~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a6eb863566d5aeb588203d6c8dec2177ea9a6b72;p=platform%2Fupstream%2Fconnman.git web: Make debug func print more useful information The file and function name are printed in debug prints. --- diff --git a/gweb/gweb.c b/gweb/gweb.c index 4c2f95c1..d35179ac 100644 --- a/gweb/gweb.c +++ b/gweb/gweb.c @@ -128,18 +128,26 @@ struct _GWeb { gpointer debug_data; }; -static inline void debug(GWeb *web, const char *format, ...) +#define debug(web, format, arg...) \ + _debug(web, __FILE__, __func__, format, ## arg) + +static void _debug(GWeb *web, const char *file, const char *caller, + const char *format, ...) { char str[256]; va_list ap; + int len; if (web->debug_func == NULL) return; va_start(ap, format); - if (vsnprintf(str, sizeof(str), format, ap) > 0) - web->debug_func(str, web->debug_data); + if ((len = snprintf(str, sizeof(str), "%s:%s() web %p ", + file, caller, web)) > 0) { + if (vsnprintf(str + len, sizeof(str) - len, format, ap) > 0) + web->debug_func(str, web->debug_data); + } va_end(ap); }