From 8091baf4b63a408ea4d2c0cdcd813d93915f99a9 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Mon, 20 Jun 2016 21:14:11 +0200 Subject: [PATCH] lib-sieve: Changed sieve_extension_override() to use hash_table_update() rather than hash_table_insert(). Due to a Dovecot change this would now cause an assertion failure. --- src/lib-sieve/sieve-extensions.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/lib-sieve/sieve-extensions.c b/src/lib-sieve/sieve-extensions.c index 5b02982ae..3e8abc787 100644 --- a/src/lib-sieve/sieve-extensions.c +++ b/src/lib-sieve/sieve-extensions.c @@ -382,15 +382,6 @@ static struct sieve_extension *sieve_extension_lookup return hash_table_lookup(ext_reg->extension_index, name); } -static void sieve_extension_insert -(struct sieve_instance *svinst, const char *name, - struct sieve_extension *ext) -{ - struct sieve_extension_registry *ext_reg = svinst->ext_reg; - - hash_table_insert(ext_reg->extension_index, name, ext); -} - static struct sieve_extension *sieve_extension_alloc (struct sieve_instance *svinst, const struct sieve_extension_def *extdef) @@ -421,7 +412,8 @@ static struct sieve_extension *_sieve_extension_register /* Register extension if it is not registered already */ if ( ext == NULL ) { ext = sieve_extension_alloc(svinst, extdef); - sieve_extension_insert(svinst, extdef->name, ext); + hash_table_insert + (svinst->ext_reg->extension_index, extdef->name, ext); } else if ( ext->overridden ) { /* Create a dummy */ @@ -513,7 +505,8 @@ void sieve_extension_override ext->id < (int) array_count(&ext_reg->extensions) ); mod_ext = array_idx(&ext_reg->extensions, ext->id); - sieve_extension_insert(svinst, name, *mod_ext); + hash_table_update + (ext_reg->extension_index, name, *mod_ext); if ( old_ext != NULL ) old_ext->overridden = TRUE; } -- GitLab