X-Git-Url: https://git.exim.org/users/heiko/exim.git/blobdiff_plain/4fab92fbc2b63bac2d89c1dae69fa1845cb640b7..b4b07fa8e89e0417499947fa3bd741cf69791b6f:/src/exim_monitor/em_log.c?ds=sidebyside diff --git a/src/exim_monitor/em_log.c b/src/exim_monitor/em_log.c index 9ff994ced..1e1dc7c04 100644 --- a/src/exim_monitor/em_log.c +++ b/src/exim_monitor/em_log.c @@ -2,7 +2,7 @@ * Exim Monitor * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2016 */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ /* See the file NOTICE for conditions of use and distribution. */ /* This module contains code for scanning the main log, @@ -227,7 +227,7 @@ if (LOG != NULL) { uschar *id; uschar *p = buffer; - void *reset_point; + rmark reset_point; int length = Ustrlen(buffer); int i; @@ -240,7 +240,7 @@ if (LOG != NULL) it for various regular expression matches and take appropriate action. Get the current store point so we can reset to it. */ - reset_point = store_get(0); + reset_point = store_mark(); /* First, update any stripchart data values, noting that the zeroth stripchart is the queue length, which is handled elsewhere, and the @@ -281,12 +281,8 @@ if (LOG != NULL) if (strstric(buffer, US"frozen", FALSE) != NULL) { queue_item *qq = find_queue(id, queue_noop, 0); - if (qq != NULL) - { - if (strstric(buffer, US"unfrozen", FALSE) != NULL) - qq->frozen = FALSE; - else qq->frozen = TRUE; - } + if (qq) + qq->frozen = strstric(buffer, US"unfrozen", FALSE) == NULL; } /* Notice defer messages, and add the destination if it @@ -368,9 +364,10 @@ link count of zero on the currently open file. */ if (log_datestamping) { uschar log_file_wanted[256]; - /* Do *not* use "%s" here, we need the %D datestamp in the log_file to - * be expanded! */ - string_format(log_file_wanted, sizeof(log_file_wanted), CS log_file); + /* Do *not* use "%s" here, we need the %D datestamp in the log_file string to + be expanded. The trailing NULL arg is to quieten preprocessors that need at + least one arg for a variadic set in a macro. */ + string_format(log_file_wanted, sizeof(log_file_wanted), CS log_file, NULL); if (Ustrcmp(log_file_wanted, log_file_open) != 0) { if (LOG != NULL)