|
From: <bul...@us...> - 2013-05-28 03:35:56
|
Revision: 22774
http://sourceforge.net/p/bzflag/code/22774
Author: bullet_catcher
Date: 2013-05-28 03:35:53 +0000 (Tue, 28 May 2013)
Log Message:
-----------
Preserve const quality in record/replay packets.
Modified Paths:
--------------
trunk/bzflag/src/bzfs/RecordReplay.cxx
Modified: trunk/bzflag/src/bzfs/RecordReplay.cxx
===================================================================
--- trunk/bzflag/src/bzfs/RecordReplay.cxx 2013-05-27 19:07:54 UTC (rev 22773)
+++ trunk/bzflag/src/bzfs/RecordReplay.cxx 2013-05-28 03:35:53 UTC (rev 22774)
@@ -86,7 +86,7 @@
u32 nextFilePos;
u32 prevFilePos;
RRtime timestamp;
- char *data;
+ const char *data;
} RRpacket;
//static const unsigned int RRpacketHdrSize =
// sizeof(RRpacket) - (2 * sizeof(RRpacket*) - sizeof(char*));
@@ -1896,12 +1896,13 @@
p->data = NULL;
}
else {
- p->data = new char [p->len];
- if (fread(p->data, p->len, 1, f) != 1) {
- delete[] p->data;
+ char *d = new char [p->len];
+ if (fread(d, p->len, 1, f) != 1) {
+ delete[] d;
delete p;
return NULL;
}
+ p->data = d;
}
logDebugMessage(4,"loadRRpacket(): mode = %i, len = %4i, code = %s, data = %p\n",
@@ -2378,7 +2379,7 @@
p->mode = mode;
p->code = code;
p->len = len;
- p->data = (char*) data; // dirty little trick
+ p->data = (const char *)data;
}
@@ -2389,10 +2390,11 @@
p->next = NULL;
p->prev = NULL;
- p->data = new char [len];
- if (data != NULL) {
- memcpy(p->data, data, len);
+ char *d = new char [len];
+ if (d != NULL) {
+ memcpy(d, data, len);
}
+ p->data = d;
initPacket(mode, code, len, p->data, p);
return p;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|