aboutsummaryrefslogtreecommitdiff
path: root/packet_distribution.cpp
diff options
context:
space:
mode:
authorDavid Skoland <davidskoland@gmail.com>2017-02-15 16:19:01 +0100
committerDavid Skoland <davidskoland@gmail.com>2017-02-15 16:19:01 +0100
commitb524819e5a3f473360fe8850b831a811e6d7713d (patch)
tree3bfb3887c1897c117667476139112926d88b24c1 /packet_distribution.cpp
parentbe017b727831826257ea8d4c34bd8d33138cd5c0 (diff)
fixed some crashes
Diffstat (limited to 'packet_distribution.cpp')
-rw-r--r--packet_distribution.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/packet_distribution.cpp b/packet_distribution.cpp
index 4a848327..ff6cf005 100644
--- a/packet_distribution.cpp
+++ b/packet_distribution.cpp
@@ -62,7 +62,7 @@ void AOApplication::ms_packet_received(AOPacket *p_packet)
{
w_lobby->append_chatmessage(message_line);
}
- if (courtroom_constructed)
+ if (courtroom_constructed && courtroom_loaded)
{
w_courtroom->append_ms_chatmessage(message_line);
}
@@ -129,6 +129,8 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
QString f_hdid;
f_hdid = get_hdid();
+ encryption_needed = true;
+
AOPacket *hi_packet = new AOPacket("HI#" + f_hdid + "#%");
send_server_packet(hi_packet);
}
@@ -200,6 +202,8 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
destruct_courtroom();
construct_courtroom();
+ courtroom_loaded = false;
+
QString window_title = "Attorney Online 2";
int selected_server = w_lobby->get_selected_server();
@@ -433,6 +437,8 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
w_courtroom->done_received();
+ courtroom_loaded = true;
+
destruct_lobby();
}
else if (header == "BN")
@@ -454,7 +460,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
}
else if (header == "MS")
{
- if (courtroom_constructed)
+ if (courtroom_constructed && courtroom_loaded)
w_courtroom->handle_chatmessage(&p_packet->get_contents());
}
else if (header == "MC")