mirror of
https://github.com/monero-project/monero.git
synced 2024-12-25 11:09:24 -05:00
Fix lmdb txn commit code
This commit is contained in:
parent
cc73fe7116
commit
d64a5f70d2
@ -179,9 +179,10 @@ namespace lmdb
|
||||
expect<void> database::commit(write_txn txn) noexcept
|
||||
{
|
||||
MONERO_PRECOND(txn != nullptr);
|
||||
MONERO_LMDB_CHECK(mdb_txn_commit(txn.get()));
|
||||
txn.release();
|
||||
const int err = mdb_txn_commit(txn.release());
|
||||
release_context(ctx);
|
||||
if (err)
|
||||
return {lmdb::error(err)};
|
||||
return success();
|
||||
}
|
||||
} // lmdb
|
||||
|
@ -123,10 +123,13 @@ namespace lmdb
|
||||
const auto wrote = f(*(*txn));
|
||||
if (wrote)
|
||||
{
|
||||
MONERO_CHECK(commit(std::move(*txn)));
|
||||
return wrote;
|
||||
const auto committed = commit(std::move(*txn));
|
||||
if (committed)
|
||||
return wrote;
|
||||
if (committed != lmdb::error(MDB_MAP_FULL))
|
||||
return committed.error();
|
||||
}
|
||||
if (wrote != lmdb::error(MDB_MAP_FULL))
|
||||
else if (wrote != lmdb::error(MDB_MAP_FULL))
|
||||
return wrote;
|
||||
|
||||
txn->reset();
|
||||
|
Loading…
Reference in New Issue
Block a user