[Scummvm-git-logs] scummvm master -> 4714d671880f7cd0af3788e2a62a976b1a8822bf
ccawley2011
ccawley2011 at gmail.com
Wed Apr 7 14:42:47 UTC 2021
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
4714d67188 CRYO: Avoid packing structures containing objects or function pointers
Commit: 4714d671880f7cd0af3788e2a62a976b1a8822bf
https://github.com/scummvm/scummvm/commit/4714d671880f7cd0af3788e2a62a976b1a8822bf
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2021-04-07T15:42:38+01:00
Commit Message:
CRYO: Avoid packing structures containing objects or function pointers
Changed paths:
engines/cryo/defs.h
engines/cryo/eden.cpp
diff --git a/engines/cryo/defs.h b/engines/cryo/defs.h
index 0f78fe8b12..3f371489c0 100644
--- a/engines/cryo/defs.h
+++ b/engines/cryo/defs.h
@@ -323,13 +323,6 @@ struct perso_t {
byte _steps; // current ticks
};
-class EdenGame;
-
-struct phase_t {
- int16 _id;
- void (EdenGame::*disp)();
-};
-
namespace ObjectFlags {
enum ObjectFlags {
ofFlag1 = 1,
@@ -742,6 +735,8 @@ struct global_t {
byte _var119; // unused
};
+#include "common/pack-end.h"
+
struct PakHeaderItem {
Common::String _name; //[16];
int32 _size;
@@ -758,8 +753,6 @@ public:
PakHeaderItem* _files;
};
-#include "common/pack-end.h"
-
struct Citadel {
int16 _id;
int16 _bank[8];
diff --git a/engines/cryo/eden.cpp b/engines/cryo/eden.cpp
index 3204cb2913..212bfdc44a 100644
--- a/engines/cryo/eden.cpp
+++ b/engines/cryo/eden.cpp
@@ -3081,17 +3081,12 @@ void EdenGame::tyranDies(perso_t *perso) {
}
void EdenGame::specialObjects(perso_t *perso, char objid) {
-
-#include "common/pack-start.h" // START STRUCT PACKING
-
struct SpecialObject {
int8 _characterType;
int8 _objectId;
void (EdenGame::*dispFct)(perso_t *perso);
};
-#include "common/pack-end.h" // END STRUCT PACKING
-
static SpecialObject kSpecialObjectActions[] = {
// persoType, objectId, dispFct
{ PersonFlags::pfType8, Objects::obShroom, &EdenGame::specialMushroom },
@@ -5972,6 +5967,11 @@ void EdenGame::handleEloiReturn() {
}
//// phase.c
void EdenGame::incPhase() {
+ struct phase_t {
+ int16 _id;
+ void (EdenGame::*disp)();
+ };
+
static phase_t phases[] = {
{ 65, &EdenGame::dialautoon },
{ 113, &EdenGame::phase113 },
More information about the Scummvm-git-logs
mailing list