summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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) {