aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoroldmud0 <oldmud0@users.noreply.github.com>2021-01-10 10:44:07 -0600
committerGitHub <noreply@github.com>2021-01-10 10:44:07 -0600
commit812d04d969afd59c87295ddb23e67b758253b313 (patch)
tree0a84fdc070e09acde294076e2ee978a6b7880e16
parente65072f8f1e885f7bbade9e9d84fbeea2ef8a097 (diff)
parent4f2ac31456c41d5146728bce7b7041237aa9f222 (diff)
Merge pull request #393 from skyedeving/fix-empty_sm_packet-crash
Add arup_clear() and clear arup when fetching new areas
-rw-r--r--include/courtroom.h7
-rw-r--r--src/packet_distribution.cpp2
2 files changed, 9 insertions, 0 deletions
diff --git a/include/courtroom.h b/include/courtroom.h
index cb1c4583..a4245a7d 100644
--- a/include/courtroom.h
+++ b/include/courtroom.h
@@ -92,6 +92,13 @@ public:
arup_locks.append(locked);
}
+ void arup_clear() {
+ arup_players.clear();
+ arup_statuses.clear();
+ arup_cms.clear();
+ arup_locks.clear();
+ }
+
void arup_modify(int type, int place, QString value)
{
if (type == 0) {
diff --git a/src/packet_distribution.cpp b/src/packet_distribution.cpp
index 7146e6ed..15cb31b0 100644
--- a/src/packet_distribution.cpp
+++ b/src/packet_distribution.cpp
@@ -413,9 +413,11 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
goto end;
w_courtroom->clear_areas();
+ w_courtroom->arup_clear();
for (int n_element = 0; n_element < f_contents.size(); ++n_element) {
w_courtroom->append_area(f_contents.at(n_element));
+ w_courtroom->arup_append(0, "Unknown", "Unknown", "Unknown");
}
w_courtroom->list_areas();