summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2010-02-24 21:17:26 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2010-02-24 21:17:26 +0000
commit4e1e6820dbf1744df641cd88293c502584b5d4df (patch)
treeedc9f76f97123c6237db4a6a04575935b6dc4018
parente3d176d0d36ef915bf2286c2d01202c906a7aa1a (diff)
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: https://origsvn.digium.com/svn/asterisk/trunk@248584 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--include/asterisk/term.h2
-rw-r--r--main/logger.c7
-rw-r--r--main/term.c5
3 files changed, 8 insertions, 6 deletions
diff --git a/include/asterisk/term.h b/include/asterisk/term.h
index d75cf99d0..bbdc75319 100644
--- a/include/asterisk/term.h
+++ b/include/asterisk/term.h
@@ -92,7 +92,7 @@ int ast_term_color_code(struct ast_str **str, int fgcolor, int bgcolor);
*/
char *term_color_code(char *outbuf, int fgcolor, int bgcolor, int maxout);
-char *term_strip(char *outbuf, char *inbuf, int maxout);
+char *term_strip(char *outbuf, const char *inbuf, int maxout);
void term_filter_escapes(char *line);
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) {