widelands-dev team mailing list archive
-
widelands-dev team
-
Mailing list archive
-
Message #16711
[Merge] lp:~widelands-dev/widelands/bug_1826669_MapDownloandChange into lp:widelands/build20
Klaus Halfmann has proposed merging lp:~widelands-dev/widelands/bug_1826669_MapDownloandChange into lp:widelands/build20.
Commit message:
Fix for #1826669
Requested reviews:
Toni Förster (stonerl): remote network test
Related bugs:
Bug #1826669 in widelands: "R20-rc1 HeapUseAfterFree when changig Map during Download"
https://bugs.launchpad.net/widelands/+bug/1826669
For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/bug_1826669_MapDownloandChange/+merge/366616
Avoid double delete of _file in gameclient.cc
--
Your team Widelands Developers is subscribed to branch lp:widelands/build20.
=== modified file 'src/network/gameclient.cc'
--- src/network/gameclient.cc 2019-02-23 11:00:49 +0000
+++ src/network/gameclient.cc 2019-04-28 11:30:30 +0000
@@ -586,8 +586,10 @@
d->settings.mapfilename.c_str());
// New map was set, so we clean up the buffer of a previously requested file
- if (file_)
+ if (file_) {
delete file_;
+ file_ = NULL;
+ }
break;
}
@@ -637,8 +639,9 @@
s.unsigned_8(NETCMD_NEW_FILE_AVAILABLE);
d->net->send(s);
- if (file_)
+ if (file_) {
delete file_;
+ }
file_ = new NetTransferFile();
file_->bytes = bytes;
=== modified file 'src/network/gamehost.cc'
--- src/network/gamehost.cc 2019-02-23 11:00:49 +0000
+++ src/network/gamehost.cc 2019-04-28 11:30:30 +0000
@@ -539,7 +539,9 @@
d->net.reset();
d->promoter.reset();
delete d;
+ d = NULL;
delete file_;
+ file_ = NULL;
}
const std::string& GameHost::get_local_playername() const {
=== modified file 'src/network/network.h'
--- src/network/network.h 2019-02-23 11:00:49 +0000
+++ src/network/network.h 2019-04-28 11:30:30 +0000
@@ -185,6 +185,14 @@
std::string filename;
std::string md5sum;
std::vector<FilePart> parts;
+
+ NetTransferFile() {
+ // Allow Debugging
+ }
+
+ ~NetTransferFile() {
+ // Allow Debugging
+ }
};
class Deserializer {
Follow ups