Backport rev 55452:
Whoops, need to pay attention to those test failures.
Move the clear to *before* the first use, not after.
diff --git a/Modules/_bsddb.c b/Modules/_bsddb.c
index f064878..e7613fb 100644
--- a/Modules/_bsddb.c
+++ b/Modules/_bsddb.c
@@ -1706,6 +1706,7 @@
CHECK_DB_NOT_CLOSED(self);
if (!make_key_dbt(self, keyobj, &key, NULL))
return NULL;
+ CLEAR_DBT(data);
if ( !make_dbt(dataobj, &data) ||
!checkTxnObj(txnobj, &txn) )
{
@@ -1713,7 +1714,6 @@
return NULL;
}
- CLEAR_DBT(data);
flags |= DB_GET_BOTH;
if (CHECK_DBFLAG(self, DB_THREAD)) {