# HG changeset patch # User Timo Sirainen # Date 1487462484 -7200 # Node ID f2d5416e0d7d2ae0cc0a72e027b4a4d64a05efe7 # Parent 19c764379c83cb3234b5b73cff95c2b110b5b2ae lib-storage: Assert-crash if duplicate internal hooks are added. diff -r 19c764379c83 -r f2d5416e0d7d src/lib-storage/mail-storage-hooks.c --- a/src/lib-storage/mail-storage-hooks.c Sun Feb 19 15:54:53 2017 +0200 +++ b/src/lib-storage/mail-storage-hooks.c Sun Feb 19 02:01:24 2017 +0200 @@ -103,6 +103,11 @@ void mail_storage_hooks_add_internal(const struct mail_storage_hooks *hooks) { + const struct mail_storage_hooks *const *existing_hooksp; + + /* make sure we don't add duplicate hooks */ + array_foreach(&internal_hooks, existing_hooksp) + i_assert(*existing_hooksp != hooks); array_append(&internal_hooks, &hooks, 1); }