From d7c1eb353d72c8c1955a7dfb842227a18149cb98 Mon Sep 17 00:00:00 2001
From: Jonathan McDowell <noodles@earth.li>
Date: Thu, 23 Sep 2004 12:21:08 +0000
Subject: [PATCH] Fix transaction around id32 updating in DB4 backend. For some
 reason we finished our transaction before we wrote the id32db details. Fix
 this so we do it afterwards instead.

---
 keydb_db4.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/keydb_db4.c b/keydb_db4.c
index 0d7b46b..0163ed5 100644
--- a/keydb_db4.c
+++ b/keydb_db4.c
@@ -638,10 +638,6 @@ int store_key(struct openpgp_publickey *publickey, bool intrans, bool update)
 		uids = NULL;
 	}
 
-	if (!intrans) {
-		endtrans();
-	}
-
 	/*
 	 * Write the truncated 32 bit keyid so we can lookup the full id for
 	 * queries.
@@ -704,6 +700,10 @@ int store_key(struct openpgp_publickey *publickey, bool intrans, bool update)
 		}
 	}
 
+	if (!intrans) {
+		endtrans();
+	}
+
 	return deadlock ? -1 : 0 ;
 }
 
-- 
2.39.5