summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-06-05 03:17:17 +0300
committerAndrei Karas <akaras@inbox.ru>2011-06-05 03:17:43 +0300
commit6d06bec226e4d6966e62612b41baf336955b23f4 (patch)
treeca0a59caa6276b77a04d241175c84facdef5d5ca
parent3d28658a5f6cb95e32ac5c651859052c6c389704 (diff)
downloadmanaplus-6d06bec226e4d6966e62612b41baf336955b23f4.tar.gz
manaplus-6d06bec226e4d6966e62612b41baf336955b23f4.tar.bz2
manaplus-6d06bec226e4d6966e62612b41baf336955b23f4.tar.xz
manaplus-6d06bec226e4d6966e62612b41baf336955b23f4.zip
Fix crash if reconnecting to server. Was introduced after fixing memory leaks.
-rw-r--r--src/net/tmwa/generalhandler.cpp2
-rw-r--r--src/net/tmwa/partyhandler.cpp5
-rw-r--r--src/net/tmwa/partyhandler.h2
3 files changed, 9 insertions, 0 deletions
diff --git a/src/net/tmwa/generalhandler.cpp b/src/net/tmwa/generalhandler.cpp
index 2e9070eb7..9ee8e7a23 100644
--- a/src/net/tmwa/generalhandler.cpp
+++ b/src/net/tmwa/generalhandler.cpp
@@ -199,6 +199,8 @@ void GeneralHandler::reload()
mCharHandler.get())->setCharCreateDialog(0);
static_cast<CharServerHandler*>(
mCharHandler.get())->setCharSelectDialog(0);
+
+ static_cast<PartyHandler*>(mPartyHandler.get())->reload();
}
void GeneralHandler::unload()
diff --git a/src/net/tmwa/partyhandler.cpp b/src/net/tmwa/partyhandler.cpp
index 152348d78..eb99c2299 100644
--- a/src/net/tmwa/partyhandler.cpp
+++ b/src/net/tmwa/partyhandler.cpp
@@ -570,4 +570,9 @@ void PartyHandler::setShareItems(PartyShare share)
outMsg.writeInt16(share);
}
+void PartyHandler::reload()
+{
+ taParty = Party::getParty(1);
+}
+
} // namespace TmwAthena
diff --git a/src/net/tmwa/partyhandler.h b/src/net/tmwa/partyhandler.h
index ee4f943d9..572824ed1 100644
--- a/src/net/tmwa/partyhandler.h
+++ b/src/net/tmwa/partyhandler.h
@@ -76,6 +76,8 @@ class PartyHandler : public MessageHandler, public Net::PartyHandler
void setShareItems(PartyShare share);
+ void reload();
+
private:
PartyShare mShareExp, mShareItems;
};