aboutsummaryrefslogtreecommitdiff
path: root/src/libwalletqt/TransactionHistory.h
diff options
context:
space:
mode:
authorxiphon <xiphon@protonmail.com>2019-12-16 07:50:01 +0000
committerxiphon <xiphon@protonmail.com>2019-12-16 13:31:31 +0000
commit4e1f7349c459c9e0b45bb7fa68d10ce05158e7fb (patch)
treeadda7d6a019f9ecee6b10f79ba508f3f11a1dabe /src/libwalletqt/TransactionHistory.h
parent46227bdad08e191d54e49813ee2f4c0e3c226f95 (diff)
downloadmonzero-gui-4e1f7349c459c9e0b45bb7fa68d10ce05158e7fb.tar.gz
monzero-gui-4e1f7349c459c9e0b45bb7fa68d10ce05158e7fb.tar.xz
monzero-gui-4e1f7349c459c9e0b45bb7fa68d10ce05158e7fb.zip
TransactionHistory: fix use-after-free bugs
Diffstat (limited to 'src/libwalletqt/TransactionHistory.h')
-rw-r--r--src/libwalletqt/TransactionHistory.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/libwalletqt/TransactionHistory.h b/src/libwalletqt/TransactionHistory.h
index d28a0f6c..689cf39f 100644
--- a/src/libwalletqt/TransactionHistory.h
+++ b/src/libwalletqt/TransactionHistory.h
@@ -50,9 +50,8 @@ class TransactionHistory : public QObject
Q_PROPERTY(bool locked READ locked)
public:
- Q_INVOKABLE TransactionInfo *transaction(int index);
+ Q_INVOKABLE bool transaction(int index, std::function<void (TransactionInfo &)> callback);
// Q_INVOKABLE TransactionInfo * transaction(const QString &id);
- Q_INVOKABLE QList<TransactionInfo*> getAll(quint32 accountIndex) const;
Q_INVOKABLE void refresh(quint32 accountIndex);
Q_INVOKABLE QString writeCSV(quint32 accountIndex, QString out);
quint64 count() const;
@@ -75,9 +74,9 @@ private:
private:
friend class Wallet;
+ mutable QReadWriteLock m_lock;
Monero::TransactionHistory * m_pimpl;
mutable QList<TransactionInfo*> m_tinfo;
- mutable QReadWriteLock m_tinfoLock;
mutable QDateTime m_firstDateTime;
mutable QDateTime m_lastDateTime;
mutable int m_minutesToUnlock;