diff --git a/Core/DrawCommand.h b/Core/DrawCommand.h index 97672d91..5f0d3269 100644 --- a/Core/DrawCommand.h +++ b/Core/DrawCommand.h @@ -72,6 +72,10 @@ public: _useIntegerScaling = useIntegerScaling; } + virtual ~DrawCommand() + { + } + void Draw(uint32_t* argbBuffer, OverscanDimensions &overscan, uint32_t lineWidth, uint32_t frameNumber) { if(_startFrame <= frameNumber) { diff --git a/Core/GameClient.h b/Core/GameClient.h index 50c9f4ac..ef081149 100644 --- a/Core/GameClient.h +++ b/Core/GameClient.h @@ -24,7 +24,7 @@ private: public: GameClient(); - ~GameClient(); + virtual ~GameClient(); static bool Connected(); static void Connect(shared_ptr connectionData); diff --git a/Core/GameClientConnection.h b/Core/GameClientConnection.h index a31ed224..3a51ab74 100644 --- a/Core/GameClientConnection.h +++ b/Core/GameClientConnection.h @@ -41,7 +41,7 @@ protected: public: GameClientConnection(shared_ptr socket, shared_ptr connectionData); - ~GameClientConnection(); + virtual ~GameClientConnection(); void Shutdown(); diff --git a/Core/GameServer.h b/Core/GameServer.h index 36b61555..d5e49147 100644 --- a/Core/GameServer.h +++ b/Core/GameServer.h @@ -31,7 +31,7 @@ private: public: GameServer(uint16_t port, string hostPlayerName); - ~GameServer(); + virtual ~GameServer(); static void StartServer(uint16_t port, string hostPlayerName); static void StopServer(); diff --git a/Core/GameServerConnection.h b/Core/GameServerConnection.h index b5e05694..7c80387d 100644 --- a/Core/GameServerConnection.h +++ b/Core/GameServerConnection.h @@ -35,7 +35,7 @@ protected: public: GameServerConnection(shared_ptr socket); - ~GameServerConnection(); + virtual ~GameServerConnection(); ControlDeviceState GetState(); void SendMovieData(uint8_t port, ControlDeviceState state); diff --git a/Core/HdData.h b/Core/HdData.h index 5037ef3b..e51a388a 100644 --- a/Core/HdData.h +++ b/Core/HdData.h @@ -146,6 +146,8 @@ struct HdPackCondition virtual bool IsExcludedFromFile() { return false; } virtual string ToString() = 0; + virtual ~HdPackCondition() { } + void ClearCache() { _resultCache = -1; diff --git a/Core/IMemoryHandler.h b/Core/IMemoryHandler.h index 1a02691c..77dbe8e1 100644 --- a/Core/IMemoryHandler.h +++ b/Core/IMemoryHandler.h @@ -50,4 +50,6 @@ public: virtual void GetMemoryRanges(MemoryRanges &ranges) = 0; virtual uint8_t ReadRAM(uint16_t addr) = 0; virtual void WriteRAM(uint16_t addr, uint8_t value) = 0; + + virtual ~IMemoryHandler() {} }; \ No newline at end of file diff --git a/Core/LuaScriptingContext.h b/Core/LuaScriptingContext.h index 39cacf8f..b363e6a0 100644 --- a/Core/LuaScriptingContext.h +++ b/Core/LuaScriptingContext.h @@ -16,7 +16,7 @@ protected: public: LuaScriptingContext(); - ~LuaScriptingContext(); + virtual ~LuaScriptingContext(); bool LoadScript(string scriptName, string scriptContent, Debugger* debugger) override; diff --git a/Core/MesenMovie.h b/Core/MesenMovie.h index 745270ef..e91a02dc 100644 --- a/Core/MesenMovie.h +++ b/Core/MesenMovie.h @@ -35,7 +35,7 @@ private: public: MesenMovie(); - ~MesenMovie(); + virtual ~MesenMovie(); bool Play(VirtualFile &file) override; bool SetInput(BaseControlDevice* device) override; diff --git a/Core/MovieRecorder.h b/Core/MovieRecorder.h index a75592d2..bc0842c2 100644 --- a/Core/MovieRecorder.h +++ b/Core/MovieRecorder.h @@ -29,7 +29,7 @@ private: public: MovieRecorder(); - ~MovieRecorder(); + virtual ~MovieRecorder(); bool Record(RecordMovieOptions options); bool Stop(); diff --git a/Core/RewindManager.h b/Core/RewindManager.h index 8fe07ee7..ef7df330 100644 --- a/Core/RewindManager.h +++ b/Core/RewindManager.h @@ -46,7 +46,7 @@ private: public: RewindManager(); - ~RewindManager(); + virtual ~RewindManager(); void ProcessNotification(ConsoleNotificationType type, void* parameter) override; void ProcessEndOfFrame(); diff --git a/Core/ScriptingContext.h b/Core/ScriptingContext.h index 78b17c9b..4033f148 100644 --- a/Core/ScriptingContext.h +++ b/Core/ScriptingContext.h @@ -42,6 +42,7 @@ protected: virtual int InternalCallEventCallback(EventType type) = 0; public: + virtual ~ScriptingContext() {} virtual bool LoadScript(string scriptName, string scriptContent, Debugger* debugger) = 0; void Log(string message); diff --git a/Core/Snapshotable.h b/Core/Snapshotable.h index f158d1aa..0b931e85 100644 --- a/Core/Snapshotable.h +++ b/Core/Snapshotable.h @@ -228,6 +228,8 @@ protected: } public: + virtual ~Snapshotable() {} + void SaveSnapshot(ostream* file); void LoadSnapshot(istream* file, uint32_t stateVersion); diff --git a/Utilities/BaseCodec.h b/Utilities/BaseCodec.h index 47d83283..61333784 100644 --- a/Utilities/BaseCodec.h +++ b/Utilities/BaseCodec.h @@ -7,4 +7,6 @@ public: virtual bool SetupCompress(int width, int height, uint32_t compressionLevel) = 0; virtual int CompressFrame(bool isKeyFrame, uint8_t *frameData, uint8_t** compressedData) = 0; virtual const char* GetFourCC() = 0; + + virtual ~BaseCodec() { } }; \ No newline at end of file