This change makes it so that logs will report the correct source of verbose messages.
authorMark Michelson <mmichelson@digium.com>
Wed, 21 May 2008 22:34:27 +0000 (22:34 +0000)
committerMark Michelson <mmichelson@digium.com>
Wed, 21 May 2008 22:34:27 +0000 (22:34 +0000)
Until this change, all verbose messages in Asterisk's log files reported logger.c
as the source of the message.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@117693 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/logger.h
main/logger.c
utils/ael_main.c
utils/hashtest.c
utils/hashtest2.c
utils/refcounter.c

index 9ed2dc9..4995c54 100644 (file)
@@ -75,8 +75,10 @@ void ast_queue_log(const char *queuename, const char *callid, const char *agent,
        Note the abscence of a comma after the VERBOSE_PREFIX_3.  This is important.
        VERBOSE_PREFIX_1 through VERBOSE_PREFIX_3 are defined.
  */
-void ast_verbose(const char *fmt, ...)
-       __attribute__ ((format (printf, 1, 2)));
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...)
+       __attribute__ ((format (printf, 4, 5)));
+
+#define ast_verbose(...) __ast_verbose(__FILE__, __LINE__, __PRETTY_FUNCTION__,  __VA_ARGS__)
 
 void ast_child_verbose(int level, const char *fmt, ...)
        __attribute__ ((format (printf, 2, 3)));
index cc062d9..a4936ba 100644 (file)
@@ -1156,7 +1156,7 @@ void ast_backtrace(void)
 #endif
 }
 
-void ast_verbose(const char *fmt, ...)
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...)
 {
        struct logmsg *logmsg = NULL;
        struct ast_str *buf = NULL;
@@ -1198,7 +1198,7 @@ void ast_verbose(const char *fmt, ...)
 
        strcpy(logmsg->str, buf->str);
 
-       ast_log(LOG_VERBOSE, "%s", logmsg->str + 1);
+       ast_log(__LOG_VERBOSE, file, line, func, "%s", logmsg->str + 1);
 
        /* Set type */
        logmsg->type = LOGMSG_VERBOSE;
index 1fc955a..f8477ed 100644 (file)
@@ -108,7 +108,7 @@ void ast_cli_unregister_multiple(void);
 void ast_context_destroy(void);
 void ast_log(int level, const char *file, int line, const char *function, const char *fmt, ...);
 char *ast_process_quotes_and_slashes(char *start, char find, char replace_with);
-void ast_verbose(const char *fmt, ...);
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...);
 struct ast_app *pbx_findapp(const char *app);
 void filter_leading_space_from_exprs(char *str);
 void filter_newlines(char *str);
index bce9d8c..95f463d 100644 (file)
@@ -347,7 +347,7 @@ void ast_log(int level, const char *file, int line, const char *function, const
        va_end(vars);
 }
 
-void ast_verbose(const char *fmt, ...)
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...)
 {
         va_list vars;
         va_start(vars,fmt);
index aa81719..2865822 100644 (file)
@@ -359,7 +359,7 @@ void ast_log(int level, const char *file, int line, const char *function, const
        va_end(vars);
 }
 
-void ast_verbose(const char *fmt, ...)
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...)
 {
         va_list vars;
         va_start(vars,fmt);
index 4d4d9db..5e75061 100644 (file)
@@ -250,7 +250,7 @@ void ast_log(int level, const char *file, int line, const char *function, const
        va_end(vars);
 }
 
-void ast_verbose(const char *fmt, ...)
+void __ast_verbose(const char *file, int line, const char *func, const char *fmt, ...)
 {
         va_list vars;
         va_start(vars,fmt);