diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index ad217fe..ce9e03e 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -28,43 +28,9 @@
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -189,7 +155,8 @@
-
+
+
diff --git a/Quake/cl_demo.cpp b/Quake/cl_demo.cpp
index f86efe8..5c55341 100644
--- a/Quake/cl_demo.cpp
+++ b/Quake/cl_demo.cpp
@@ -124,6 +124,7 @@ static int CL_GetDemoMessage(void) {
int msgsize;
if (!fread(&msgsize, 4, 1, cls.demofile))
Sys_Error("Demo read error");
+ msgsize = LittleLong(msgsize);
VectorCopy(cl.mviewangles[0], cl.mviewangles[1]);
for (i = 0; i < 3; i++) {
r = fread(&f, 4, 1, cls.demofile);
@@ -132,9 +133,11 @@ static int CL_GetDemoMessage(void) {
if (msgsize > MAX_MSGLEN)
Sys_Error("Demo message > MAX_MSGLEN");
- std::uint8_t buf[msgsize];
- r = fread(&buf, msgsize, 1, cls.demofile);
- net_message.write(buf, msgsize);
+ auto buf = new std::uint8_t[msgsize];
+ r = fread(&buf[0], msgsize, 1, cls.demofile);
+ net_message.clear();
+ net_message.write(&buf[0], msgsize);
+ delete []buf;
if (r != 1) {
CL_StopPlayback();
return 0;