diff options
-rw-r--r-- | include/asterisk/term.h | 2 | ||||
-rw-r--r-- | main/logger.c | 7 | ||||
-rw-r--r-- | main/term.c | 5 |
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) { |