summaryrefslogtreecommitdiff
path: root/src/net/ea
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-01-30 19:10:14 +0300
committerAndrei Karas <akaras@inbox.ru>2017-01-30 20:39:49 +0300
commit5f8496ca103fabb4cfc265d8d936e194129a17ef (patch)
tree60314fbebf3773e1a6df6d32a9fbd67b4a482071 /src/net/ea
parent6fa245a1cb5037118ba19a084f219abcc00f6294 (diff)
downloadmanaplus-5f8496ca103fabb4cfc265d8d936e194129a17ef.tar.gz
manaplus-5f8496ca103fabb4cfc265d8d936e194129a17ef.tar.bz2
manaplus-5f8496ca103fabb4cfc265d8d936e194129a17ef.tar.xz
manaplus-5f8496ca103fabb4cfc265d8d936e194129a17ef.zip
Clean buy dialog dungling pointer if buy dialog was destroyed.
Diffstat (limited to 'src/net/ea')
-rw-r--r--src/net/ea/buysellhandler.cpp6
-rw-r--r--src/net/ea/buysellhandler.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/src/net/ea/buysellhandler.cpp b/src/net/ea/buysellhandler.cpp
index 9a147347a..21769cef4 100644
--- a/src/net/ea/buysellhandler.cpp
+++ b/src/net/ea/buysellhandler.cpp
@@ -35,4 +35,10 @@ BuySellHandler::BuySellHandler()
BuySellRecv::mBuyDialog = nullptr;
}
+void BuySellHandler::cleanDialogReference(const BuyDialog *const dialog) const
+{
+ if (BuySellRecv::mBuyDialog == dialog)
+ BuySellRecv::mBuyDialog = nullptr;
+}
+
} // namespace Ea
diff --git a/src/net/ea/buysellhandler.h b/src/net/ea/buysellhandler.h
index 4343cd256..2c5e1caad 100644
--- a/src/net/ea/buysellhandler.h
+++ b/src/net/ea/buysellhandler.h
@@ -34,6 +34,9 @@ class BuySellHandler notfinal : public Net::BuySellHandler
BuySellHandler();
A_DELETE_COPY(BuySellHandler)
+
+ void cleanDialogReference(const BuyDialog *const dialog) const
+ override final;
};
} // namespace Ea