diff --git a/blackberry-qnx/playbook/.cproject b/blackberry-qnx/playbook/.cproject index bc0a7de362..f05bf5017f 100644 --- a/blackberry-qnx/playbook/.cproject +++ b/blackberry-qnx/playbook/.cproject @@ -29,7 +29,7 @@ - + @@ -154,7 +154,7 @@ - + @@ -281,7 +281,7 @@ - + @@ -403,7 +403,7 @@ - + diff --git a/blackberry-qnx/playbook/.project b/blackberry-qnx/playbook/.project index 25a505c8b1..3c53637a56 100644 --- a/blackberry-qnx/playbook/.project +++ b/blackberry-qnx/playbook/.project @@ -27,7 +27,7 @@ org.eclipse.cdt.make.core.buildLocation - ${workspace_loc:/RetroArch/Device-Release} + ${workspace_loc:/RetroArch/Device-Debug} org.eclipse.cdt.make.core.contents diff --git a/blackberry-qnx/qnx_input.c b/blackberry-qnx/qnx_input.c index 9fe1ddf344..69c16b2201 100644 --- a/blackberry-qnx/qnx_input.c +++ b/blackberry-qnx/qnx_input.c @@ -662,11 +662,10 @@ static bool qnx_input_key_pressed(void *data, int key) static void qnx_input_free_input(void *data) { - qnx_input_t *qnx = (qnx_input_t*)data; + if (!data) + return; - if (qnx) - free(qnx); - qnx = 0; + //free(data); } static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, diff --git a/driver.c b/driver.c index ac87e9f3f9..bdf61ab8e8 100644 --- a/driver.c +++ b/driver.c @@ -1663,10 +1663,10 @@ void uninit_video_input(void) } #endif - if (driver.input_data != driver.video_data && driver.input) + if (driver.input_data != driver.video_data && driver.input && driver.input->free) input_free_func(); - if (driver.video_data && driver.video) + if (driver.video_data && driver.video && driver.video->free) video_free_func(); deinit_pixel_converter(); diff --git a/frontend/frontend.c b/frontend/frontend.c index c4f442dae1..b9126b1920 100644 --- a/frontend/frontend.c +++ b/frontend/frontend.c @@ -29,17 +29,21 @@ #include "../file_ext.h" -#ifdef RARCH_CONSOLE +#if defined(RARCH_CONSOLE) || defined(__QNX__) #include "../config.def.h" +#ifdef RARCH_CONSOLE default_paths_t default_paths; +#endif static void rarch_get_environment_console(void) { +#ifdef RARCH_CONSOLE path_mkdir(default_paths.port_dir); path_mkdir(default_paths.system_dir); path_mkdir(default_paths.savestate_dir); path_mkdir(default_paths.sram_dir); +#endif config_load(); @@ -88,25 +92,25 @@ static void rarch_get_environment_console(void) #define ra_preinited false #endif -#if defined(HAVE_BB10) || defined(RARCH_CONSOLE) +#if defined(__QNX__) || defined(RARCH_CONSOLE) #define attempt_load_game false #else #define attempt_load_game true #endif -#if defined(RARCH_CONSOLE) || defined(HAVE_BB10) || defined(ANDROID) +#if defined(RARCH_CONSOLE) || defined(__QNX__) || defined(ANDROID) #define initial_menu_lifecycle_state (1ULL << MODE_LOAD_GAME) #else #define initial_menu_lifecycle_state (1ULL << MODE_GAME) #endif -#if !defined(RARCH_CONSOLE) && !defined(HAVE_BB10) && !defined(ANDROID) +#if !defined(RARCH_CONSOLE) && !defined(__QNX__) && !defined(ANDROID) #define attempt_load_game_push_history true #else #define attempt_load_game_push_history false #endif -#ifndef RARCH_CONSOLE +#if !defined(RARCH_CONSOLE) || !defined(__QNX__) #define rarch_get_environment_console() (void)0 #endif diff --git a/input/linuxraw_input.c b/input/linuxraw_input.c index 72c20e3ed7..64c68c930b 100644 --- a/input/linuxraw_input.c +++ b/input/linuxraw_input.c @@ -179,6 +179,9 @@ static void linuxraw_input_free(void *data) { linuxraw_input_t *linuxraw = (linuxraw_input_t*)data; + if (!linuxraw) + return; + if (linuxraw->joypad) linuxraw->joypad->destroy();