Hi Wietse, I noticed an error in the patch. Attached you'll find the corrected version.
Thanks, Roel
diff -pruN a/src/util/dict_union.c b/src/util/dict_union.c --- a/src/util/dict_union.c 2014-10-21 01:53:04.000000000 +0200 +++ b/src/util/dict_union.c 2016-09-15 13:14:54.961550046 +0200 @@ -81,7 +81,10 @@ static const char *dict_union_lookup(DIC for (cpp = dict_union->map_union->argv; (dict_type_name = *cpp) != 0; cpp++) { if ((map = dict_handle(dict_type_name)) == 0) msg_panic("%s: dictionary \"%s\" not found", myname, dict_type_name); - if ((result = dict_get(map, query)) == 0) + result = dict_get(map, query); + if (map->error < 0) + DICT_ERR_VAL_RETURN(dict, map->error, 0); + if (result == 0) continue; if (VSTRING_LEN(dict_union->re_buf) > 0) VSTRING_ADDCH(dict_union->re_buf, ',');