[Scummvm-cvs-logs] scummvm master -> a5e969087b419710276ae08cac0565e144827292

bluegr bluegr at gmail.com
Fri Jul 5 01:58:26 CEST 2013


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
93987d999c COMMON: Fix crash when the keymapper and the event recorder are enabled
a5e969087b CREATE_PROJECT: Add the event recorder to the feature flags


Commit: 93987d999c61221bda3da548c8c81f5d6d906a12
    https://github.com/scummvm/scummvm/commit/93987d999c61221bda3da548c8c81f5d6d906a12
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2013-07-04T16:56:12-07:00

Commit Message:
COMMON: Fix crash when the keymapper and the event recorder are enabled

DefaultEventManager registers a keymapper that is supposed to be
auto-freed. However, the event recorder then sets itself as a new
keymapper, but because the autofree flag is already set,
registerMapper() ends up deleting the event recorder itself. Setting
the autofree flag before actually freeing the mapper fixes the issue
and prevents ScummVM from crashing on startup

Changed paths:
    common/EventDispatcher.cpp



diff --git a/common/EventDispatcher.cpp b/common/EventDispatcher.cpp
index e60c1aa..20a5b5e 100644
--- a/common/EventDispatcher.cpp
+++ b/common/EventDispatcher.cpp
@@ -71,11 +71,11 @@ void EventDispatcher::dispatch() {
 }
 
 void EventDispatcher::registerMapper(EventMapper *mapper, bool autoFree) {
+	_autoFreeMapper = autoFree;
 	if (_autoFreeMapper) {
 		delete _mapper;
 	}
 	_mapper = mapper;
-	_autoFreeMapper = autoFree;
 }
 
 


Commit: a5e969087b419710276ae08cac0565e144827292
    https://github.com/scummvm/scummvm/commit/a5e969087b419710276ae08cac0565e144827292
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2013-07-04T16:57:21-07:00

Commit Message:
CREATE_PROJECT: Add the event recorder to the feature flags

Changed paths:
    devtools/create_project/create_project.cpp



diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp
index 6b6e86a..129e9f2 100644
--- a/devtools/create_project/create_project.cpp
+++ b/devtools/create_project/create_project.cpp
@@ -809,19 +809,20 @@ const Feature s_features[] = {
 	{"freetype",   "USE_FREETYPE2", "freetype",         true, "FreeType support" },
 
 	// Feature flags
-	{        "bink",        "USE_BINK",         "", true, "Bink video support" },
-	{     "scalers",     "USE_SCALERS",         "", true, "Scalers" },
-	{   "hqscalers",  "USE_HQ_SCALERS",         "", true, "HQ scalers" },
-	{       "16bit",   "USE_RGB_COLOR",         "", true, "16bit color support" },
-	{     "mt32emu",     "USE_MT32EMU",         "", true, "integrated MT-32 emulator" },
-	{        "nasm",        "USE_NASM",         "", true, "IA-32 assembly support" }, // This feature is special in the regard, that it needs additional handling.
-	{      "opengl",      "USE_OPENGL", "opengl32", true, "OpenGL support" },
-	{     "taskbar",     "USE_TASKBAR",         "", true, "Taskbar integration support" },
-	{ "translation", "USE_TRANSLATION",         "", true, "Translation support" },
-	{      "vkeybd",   "ENABLE_VKEYBD",         "", false, "Virtual keyboard support"},
-	{   "keymapper","ENABLE_KEYMAPPER",         "", false, "Keymapper support"},
-	{  "langdetect",  "USE_DETECTLANG",         "", true, "System language detection support" } // This feature actually depends on "translation", there
-	                                                                                            // is just no current way of properly detecting this...
+	{            "bink",             "USE_BINK",         "", true,  "Bink video support" },
+	{         "scalers",          "USE_SCALERS",         "", true,  "Scalers" },
+	{       "hqscalers",       "USE_HQ_SCALERS",         "", true,  "HQ scalers" },
+	{           "16bit",        "USE_RGB_COLOR",         "", true,  "16bit color support" },
+	{         "mt32emu",          "USE_MT32EMU",         "", true,  "integrated MT-32 emulator" },
+	{            "nasm",             "USE_NASM",         "", true,  "IA-32 assembly support" }, // This feature is special in the regard, that it needs additional handling.
+	{          "opengl",           "USE_OPENGL", "opengl32", true,  "OpenGL support" },
+	{         "taskbar",          "USE_TASKBAR",         "", true,  "Taskbar integration support" },
+	{     "translation",      "USE_TRANSLATION",         "", true,  "Translation support" },
+	{          "vkeybd",        "ENABLE_VKEYBD",         "", false, "Virtual keyboard support"},
+	{       "keymapper",     "ENABLE_KEYMAPPER",         "", false, "Keymapper support"},
+	{   "eventrecorder", "ENABLE_EVENTRECORDER",         "", false, "Event recorder support"},
+	{      "langdetect",       "USE_DETECTLANG",         "", true,  "System language detection support" } // This feature actually depends on "translation", there
+	                                                                                                      // is just no current way of properly detecting this...
 };
 
 const Tool s_tools[] = {






More information about the Scummvm-git-logs mailing list