From ee06b3f7889bd99c28ac68f4781bda77d67eed00 Mon Sep 17 00:00:00 2001 From: "Neal H. Walfield" <neal@g10code.com> Date: Wed, 7 Sep 2016 10:53:28 +0200 Subject: [PATCH] g10: Check for a new binding a bit later. * g10/tofu.c (build_conflict_set): Check for the current key after looking for conflicts and removing any '!'. -- Signed-off-by: Neal H. Walfield <neal@g10code.com> Fixes-commit: 1f1f56e6 --- g10/tofu.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/g10/tofu.c b/g10/tofu.c index 2976c6b18..5b202692c 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -1769,15 +1769,6 @@ build_conflict_set (tofu_dbs_t dbs, const char *fingerprint, const char *email) return NULL; } - /* If the current binding has not yet been recorded, add it to the - * list. (The order by above ensures that if it is present, it will - * be first.) */ - if (! (conflict_set && strcmp (conflict_set->d, fingerprint) == 0)) - { - add_to_strlist (&conflict_set, fingerprint); - conflict_set->flags |= BINDING_NEW; - } - /* Set BINDING_CONFLICT if the binding has a known conflict. This * allows us to distinguish between bindings where the user * explicitly set the policy to ask and bindings where we set the @@ -1801,6 +1792,15 @@ build_conflict_set (tofu_dbs_t dbs, const char *fingerprint, const char *email) } } + /* If the current binding has not yet been recorded, add it to the + * list. (The order by above ensures that if it is present, it will + * be first.) */ + if (! (conflict_set && strcmp (conflict_set->d, fingerprint) == 0)) + { + add_to_strlist (&conflict_set, fingerprint); + conflict_set->flags |= BINDING_NEW; + } + conflict_set_count = strlist_length (conflict_set); /* Eliminate false conflicts. */