diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2013-01-09 00:18:53 -0800 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2013-01-09 00:43:27 -0800 |
commit | f0a87e4f7f5377498960429e96be5dff183c8326 (patch) | |
tree | 2661728f73f3c163e971d94cd123ef6e378264aa /src/map/party.cpp | |
parent | f2fd4885c2a906414e0f36acf95d252e5a9d5805 (diff) | |
download | tmwa-f0a87e4f7f5377498960429e96be5dff183c8326.tar.gz tmwa-f0a87e4f7f5377498960429e96be5dff183c8326.tar.bz2 tmwa-f0a87e4f7f5377498960429e96be5dff183c8326.tar.xz tmwa-f0a87e4f7f5377498960429e96be5dff183c8326.zip |
Make incoming packets read-only
Diffstat (limited to 'src/map/party.cpp')
-rw-r--r-- | src/map/party.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/map/party.cpp b/src/map/party.cpp index 9b9470c..98bb2be 100644 --- a/src/map/party.cpp +++ b/src/map/party.cpp @@ -145,7 +145,10 @@ int party_check_member(struct party *p) if (strcmp(p->member[j].name, sd->status.name) == 0) f = 0; // データがある else - p->member[j].sd = NULL; // 同垢別キャラだった + { + // I can prove it was already zeroed + // p->member[j].sd = NULL; // 同垢別キャラだった + } } } if (f) @@ -178,7 +181,7 @@ int party_recv_noinfo(int party_id) } // 情報所得 -int party_recv_info(struct party *sp) +int party_recv_info(const struct party *sp) { struct party *p; int i; @@ -191,9 +194,11 @@ int party_recv_info(struct party *sp) numdb_insert(party_db, sp->party_id, p); // 最初のロードなのでユーザーのチェックを行う - party_check_member(sp); + *p = *sp; + party_check_member(p); } - memcpy(p, sp, sizeof(struct party)); + else + *p = *sp; for (i = 0; i < MAX_PARTY; i++) { // sdの設定 |