From 54b120d461b7e2fdfa427ed99c67b09868bf1daf Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan.bosch@open-xchange.com> Date: Tue, 8 Dec 2020 01:27:54 +0100 Subject: [PATCH] lib-sieve: sieve - Retain resource usage statistics across script recompile in sieve_open*(). --- src/lib-sieve/sieve.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c index 79a4ec426..b3e560df8 100644 --- a/src/lib-sieve/sieve.c +++ b/src/lib-sieve/sieve.c @@ -380,11 +380,16 @@ sieve_open_script_real(struct sieve_script *script, enum sieve_error *error_r) { struct sieve_instance *svinst = sieve_script_svinst(script); + struct sieve_resource_usage rusage; struct sieve_binary *sbin; + sieve_resource_usage_init(&rusage); + /* Try to open the matching binary */ sbin = sieve_script_binary_load(script, error_r); if (sbin != NULL) { + sieve_binary_get_resource_usage(sbin, &rusage); + /* Ok, it exists; now let's see if it is up to date */ if (!sieve_binary_up_to_date(sbin, flags)) { /* Not up to date */ @@ -411,6 +416,8 @@ sieve_open_script_real(struct sieve_script *script, "Script `%s' from %s successfully compiled", sieve_script_name(script), sieve_script_location(script)); + + sieve_binary_set_resource_usage(sbin, &rusage); } return sbin; -- GitLab