diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c index 69827a93765003a6e5eed4b1851a21fef8b6e327..20a68e845e6469b1ab87b7c08227a5767d321c8c 100644 --- a/src/lib-sieve/sieve.c +++ b/src/lib-sieve/sieve.c @@ -1007,6 +1007,7 @@ sieve_user_get_log_path(struct sieve_instance *svinst, */ struct sieve_trace_log { + struct sieve_instance *svinst; struct ostream *output; }; @@ -1033,6 +1034,7 @@ int sieve_trace_log_create(struct sieve_instance *svinst, const char *path, } trace_log = i_new(struct sieve_trace_log, 1); + trace_log->svinst = svinst; trace_log->output = output; *trace_log_r = trace_log; @@ -1127,7 +1129,7 @@ void sieve_trace_log_free(struct sieve_trace_log **_trace_log) *_trace_log = NULL; if (o_stream_finish(trace_log->output) < 0) { - i_error("write(%s) failed: %s", + e_error(trace_log->svinst->event, "write(%s) failed: %s", o_stream_get_name(trace_log->output), o_stream_get_error(trace_log->output)); }