diff options
| author | Philip Kaufmann <[email protected]> | 2012-05-03 14:52:15 +0200 |
|---|---|---|
| committer | Philip Kaufmann <[email protected]> | 2012-05-04 11:09:55 +0200 |
| commit | dab7acdf4570e7b716cff02fb3d0550f142f747c (patch) | |
| tree | c1a8fb8025f999d8c2d2e9ba341b0c0d9367dbaf /src/qt/walletmodel.cpp | |
| parent | Merge pull request #1179 from Diapolo/project-file (diff) | |
| download | discoin-dab7acdf4570e7b716cff02fb3d0550f142f747c.tar.xz discoin-dab7acdf4570e7b716cff02fb3d0550f142f747c.zip | |
fix #952 by checking if we have a new address or an updated label
Diffstat (limited to 'src/qt/walletmodel.cpp')
| -rw-r--r-- | src/qt/walletmodel.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/qt/walletmodel.cpp b/src/qt/walletmodel.cpp index a915274da..b9ccb06c0 100644 --- a/src/qt/walletmodel.cpp +++ b/src/qt/walletmodel.cpp @@ -150,14 +150,21 @@ WalletModel::SendCoinsReturn WalletModel::sendCoins(const QList<SendCoinsRecipie hex = QString::fromStdString(wtx.GetHash().GetHex()); } - // Add addresses that we've sent to to the address book + // Add addresses / update labels that we've sent to to the address book foreach(const SendCoinsRecipient &rcp, recipients) { std::string strAddress = rcp.address.toStdString(); + std::string strLabel = rcp.label.toStdString(); { LOCK(wallet->cs_wallet); - if (!wallet->mapAddressBook.count(strAddress)) - wallet->SetAddressBookName(strAddress, rcp.label.toStdString()); + + std::map<CBitcoinAddress, std::string>::iterator mi = wallet->mapAddressBook.find(strAddress); + + // Check if we have a new address or an updated label + if (mi == wallet->mapAddressBook.end() || mi->second != strLabel) + { + wallet->SetAddressBookName(strAddress, strLabel); + } } } |