Browse Source

wallet: Use CDataStream.data()

0.14
Wladimir J. van der Laan 8 years ago
parent
commit
5113474a91
  1. 8
      src/wallet/db.cpp
  2. 12
      src/wallet/db.h

8
src/wallet/db.cpp

@ -397,15 +397,15 @@ bool CDB::Rewrite(const string& strFile, const char* pszSkip)
break; break;
} }
if (pszSkip && if (pszSkip &&
strncmp(&ssKey[0], pszSkip, std::min(ssKey.size(), strlen(pszSkip))) == 0) strncmp(ssKey.data(), pszSkip, std::min(ssKey.size(), strlen(pszSkip))) == 0)
continue; continue;
if (strncmp(&ssKey[0], "\x07version", 8) == 0) { if (strncmp(ssKey.data(), "\x07version", 8) == 0) {
// Update version: // Update version:
ssValue.clear(); ssValue.clear();
ssValue << CLIENT_VERSION; ssValue << CLIENT_VERSION;
} }
Dbt datKey(&ssKey[0], ssKey.size()); Dbt datKey(ssKey.data(), ssKey.size());
Dbt datValue(&ssValue[0], ssValue.size()); Dbt datValue(ssValue.data(), ssValue.size());
int ret2 = pdbCopy->put(NULL, &datKey, &datValue, DB_NOOVERWRITE); int ret2 = pdbCopy->put(NULL, &datKey, &datValue, DB_NOOVERWRITE);
if (ret2 > 0) if (ret2 > 0)
fSuccess = false; fSuccess = false;

12
src/wallet/db.h

@ -122,7 +122,7 @@ protected:
CDataStream ssKey(SER_DISK, CLIENT_VERSION); CDataStream ssKey(SER_DISK, CLIENT_VERSION);
ssKey.reserve(1000); ssKey.reserve(1000);
ssKey << key; ssKey << key;
Dbt datKey(&ssKey[0], ssKey.size()); Dbt datKey(ssKey.data(), ssKey.size());
// Read // Read
Dbt datValue; Dbt datValue;
@ -158,13 +158,13 @@ protected:
CDataStream ssKey(SER_DISK, CLIENT_VERSION); CDataStream ssKey(SER_DISK, CLIENT_VERSION);
ssKey.reserve(1000); ssKey.reserve(1000);
ssKey << key; ssKey << key;
Dbt datKey(&ssKey[0], ssKey.size()); Dbt datKey(ssKey.data(), ssKey.size());
// Value // Value
CDataStream ssValue(SER_DISK, CLIENT_VERSION); CDataStream ssValue(SER_DISK, CLIENT_VERSION);
ssValue.reserve(10000); ssValue.reserve(10000);
ssValue << value; ssValue << value;
Dbt datValue(&ssValue[0], ssValue.size()); Dbt datValue(ssValue.data(), ssValue.size());
// Write // Write
int ret = pdb->put(activeTxn, &datKey, &datValue, (fOverwrite ? 0 : DB_NOOVERWRITE)); int ret = pdb->put(activeTxn, &datKey, &datValue, (fOverwrite ? 0 : DB_NOOVERWRITE));
@ -187,7 +187,7 @@ protected:
CDataStream ssKey(SER_DISK, CLIENT_VERSION); CDataStream ssKey(SER_DISK, CLIENT_VERSION);
ssKey.reserve(1000); ssKey.reserve(1000);
ssKey << key; ssKey << key;
Dbt datKey(&ssKey[0], ssKey.size()); Dbt datKey(ssKey.data(), ssKey.size());
// Erase // Erase
int ret = pdb->del(activeTxn, &datKey, 0); int ret = pdb->del(activeTxn, &datKey, 0);
@ -207,7 +207,7 @@ protected:
CDataStream ssKey(SER_DISK, CLIENT_VERSION); CDataStream ssKey(SER_DISK, CLIENT_VERSION);
ssKey.reserve(1000); ssKey.reserve(1000);
ssKey << key; ssKey << key;
Dbt datKey(&ssKey[0], ssKey.size()); Dbt datKey(ssKey.data(), ssKey.size());
// Exists // Exists
int ret = pdb->exists(activeTxn, &datKey, 0); int ret = pdb->exists(activeTxn, &datKey, 0);
@ -234,7 +234,7 @@ protected:
Dbt datKey; Dbt datKey;
unsigned int fFlags = DB_NEXT; unsigned int fFlags = DB_NEXT;
if (setRange) { if (setRange) {
datKey.set_data(&ssKey[0]); datKey.set_data(ssKey.data());
datKey.set_size(ssKey.size()); datKey.set_size(ssKey.size());
fFlags = DB_SET_RANGE; fFlags = DB_SET_RANGE;
} }

Loading…
Cancel
Save