From fe7b0eae7b15ba31a5465b150f0c6cf5b49657d7 Mon Sep 17 00:00:00 2001 From: tilghman Date: Wed, 24 Feb 2010 21:17:26 +0000 Subject: Merged revisions 248582 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r248582 | tilghman | 2010-02-24 15:02:18 -0600 (Wed, 24 Feb 2010) | 7 lines Remove color code sequences from verbose messages that go to logfiles. (closes issue #16786) Reported by: dodo Patches: logger2.patch uploaded by dodo (license 989) Tested by: tilghman ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@248584 f38db490-d61c-443f-a65b-d21fe96a405b --- main/logger.c | 7 ++++--- main/term.c | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'main') diff --git a/main/logger.c b/main/logger.c index 5dbceebaa..15ec7825a 100644 --- a/main/logger.c +++ b/main/logger.c @@ -832,12 +832,13 @@ static void logger_print_normal(struct logmsg *logmsg) int res = 0; /* If no file pointer exists, skip it */ - if (!chan->fileptr) + if (!chan->fileptr) { continue; - + } + /* Print out to the file */ res = fprintf(chan->fileptr, "[%s] %s[%ld] %s: %s", - logmsg->date, logmsg->level_name, logmsg->process_id, logmsg->file, logmsg->message); + logmsg->date, logmsg->level_name, logmsg->process_id, logmsg->file, term_strip(buf, logmsg->message, BUFSIZ)); if (res <= 0 && !ast_strlen_zero(logmsg->message)) { fprintf(stderr, "**** Asterisk Logging Error: ***********\n"); if (errno == ENOMEM || errno == ENOSPC) diff --git a/main/term.c b/main/term.c index 142b38847..5140e6323 100644 --- a/main/term.c +++ b/main/term.c @@ -268,9 +268,10 @@ char *term_color_code(char *outbuf, int fgcolor, int bgcolor, int maxout) return outbuf; } -char *term_strip(char *outbuf, char *inbuf, int maxout) +char *term_strip(char *outbuf, const char *inbuf, int maxout) { - char *outbuf_ptr = outbuf, *inbuf_ptr = inbuf; + char *outbuf_ptr = outbuf; + const char *inbuf_ptr = inbuf; while (outbuf_ptr < outbuf + maxout) { switch (*inbuf_ptr) { -- cgit v1.2.3