Fix segmentation fault when editing address not in address book (issue #615)

This commit is contained in:
Wladimir J. van der Laan 2011-11-08 19:54:16 +01:00
parent e1739cbf38
commit 9bc9593df5
3 changed files with 11 additions and 0 deletions

View File

@ -113,3 +113,9 @@ QString EditAddressDialog::getAddress() const
{ {
return address; return address;
} }
void EditAddressDialog::setAddress(const QString &address)
{
this->address = address;
ui->addressEdit->setText(address);
}

View File

@ -33,6 +33,7 @@ public:
void accept(); void accept();
QString getAddress() const; QString getAddress() const;
void setAddress(const QString &address);
private: private:
bool saveCurrentRow(); bool saveCurrentRow();

View File

@ -322,6 +322,8 @@ void TransactionView::editLabel()
// If this transaction has no associated address, exit // If this transaction has no associated address, exit
return; return;
} }
// Is address in address book? Address book can miss address when a transaction is
// sent from outside the UI.
int idx = addressBook->lookupAddress(address); int idx = addressBook->lookupAddress(address);
if(idx != -1) if(idx != -1)
{ {
@ -343,6 +345,8 @@ void TransactionView::editLabel()
// Add sending address // Add sending address
EditAddressDialog dlg(EditAddressDialog::NewSendingAddress, EditAddressDialog dlg(EditAddressDialog::NewSendingAddress,
this); this);
dlg.setModel(addressBook);
dlg.setAddress(address);
dlg.exec(); dlg.exec();
} }
} }