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.  */