aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/db.h
diff options
context:
space:
mode:
authorBen Woosley <ben.woosley@gmail.com>2018-11-24 20:49:08 -0600
committerBen Woosley <ben.woosley@gmail.com>2018-11-24 21:05:48 -0600
commit4a86a0acd9ac3ca392f0584a5fd079a856e5e4ba (patch)
tree33c6ddfc06796a2b7e5bb98da1076969c02c5080 /src/wallet/db.h
parent1a9f9f7e5e2e73fb832f5b96ad7e9e57954f3f3c (diff)
downloadbitcoin-4a86a0acd9ac3ca392f0584a5fd079a856e5e4ba.tar.xz
Make SafeDbt DB_DBT_MALLOC on default initialization
If we're constructing the SafeDbt without provided data, it is always malloced, so that is the case we expose. Also run clang-format.
Diffstat (limited to 'src/wallet/db.h')
-rw-r--r--src/wallet/db.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/wallet/db.h b/src/wallet/db.h
index 73cbff98fb..25e1cdafa5 100644
--- a/src/wallet/db.h
+++ b/src/wallet/db.h
@@ -170,13 +170,15 @@ private:
class BerkeleyBatch
{
/** RAII class that automatically cleanses its data on destruction */
- class SafeDbt final {
+ class SafeDbt final
+ {
Dbt m_dbt;
public:
- // construct Dbt with data or flags
- SafeDbt(u_int32_t flags = 0);
- SafeDbt(void *data, size_t size);
+ // construct Dbt with internally-managed data
+ SafeDbt();
+ // construct Dbt with provided data
+ SafeDbt(void* data, size_t size);
~SafeDbt();
// delegate to Dbt
@@ -227,7 +229,7 @@ public:
SafeDbt datKey(ssKey.data(), ssKey.size());
// Read
- SafeDbt datValue(DB_DBT_MALLOC);
+ SafeDbt datValue;
int ret = pdb->get(activeTxn, datKey, datValue, 0);
bool success = false;
if (datValue.get_data() != nullptr) {
@@ -318,8 +320,8 @@ public:
int ReadAtCursor(Dbc* pcursor, CDataStream& ssKey, CDataStream& ssValue)
{
// Read at cursor
- SafeDbt datKey(DB_DBT_MALLOC);
- SafeDbt datValue(DB_DBT_MALLOC);
+ SafeDbt datKey;
+ SafeDbt datValue;
int ret = pcursor->get(datKey, datValue, DB_NEXT);
if (ret != 0)
return ret;