From: Andrew Tridgell Date: Fri, 8 Aug 2008 01:41:21 +0000 (+1000) Subject: don't leave a dangling transaction on retry error X-Git-Tag: samba-3.3.0pre1~141 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ddf3022595fe8ca378c5f52107f42e296f852685;p=thirdparty%2Fsamba.git don't leave a dangling transaction on retry error --- diff --git a/source/lib/dbwrap_util.c b/source/lib/dbwrap_util.c index 09e9071d8c9..ddc613150bb 100644 --- a/source/lib/dbwrap_util.c +++ b/source/lib/dbwrap_util.c @@ -210,7 +210,8 @@ NTSTATUS dbwrap_trans_store(struct db_context *db, TDB_DATA key, TDB_DATA dbuf, if (res != 0) { DEBUG(5, ("tdb_transaction_commit failed\n")); status = NT_STATUS_INTERNAL_DB_CORRUPTION; - goto cancel; + TALLOC_FREE(rec); + return status; } return NT_STATUS_OK; @@ -255,7 +256,8 @@ NTSTATUS dbwrap_trans_delete(struct db_context *db, TDB_DATA key) if (res != 0) { DEBUG(5, ("tdb_transaction_commit failed\n")); status = NT_STATUS_INTERNAL_DB_CORRUPTION; - goto cancel; + TALLOC_FREE(rec); + return status; } return NT_STATUS_OK;