[retro-gtk] environment: Log criticals on unimplemented commands
- From: Adrien Plazas <aplazas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [retro-gtk] environment: Log criticals on unimplemented commands
- Date: Sat, 19 Dec 2020 08:15:56 +0000 (UTC)
commit 01abd822f94afae9ec5dd9cbb36e83fd475afbc5
Author: Adrien Plazas <kekun plazas laposte net>
Date: Thu Dec 17 19:39:58 2020 +0100
environment: Log criticals on unimplemented commands
retro-runner/retro-environment.c | 45 +++++++++++++++++++++++++---------------
1 file changed, 28 insertions(+), 17 deletions(-)
---
diff --git a/retro-runner/retro-environment.c b/retro-runner/retro-environment.c
index 7217a17..35d8009 100644
--- a/retro-runner/retro-environment.c
+++ b/retro-runner/retro-environment.c
@@ -478,6 +478,16 @@ shutdown (RetroCore *self)
return TRUE;
}
+#define RETRO_UNIMPLEMENT_ENVIRONMENT(cmd) \
+ case cmd: \
+ G_STMT_START { \
+ if (cmd & RETRO_ENVIRONMENT_EXPERIMENTAL) \
+ g_critical ("Unimplemented experimental command %s", #cmd); \
+ else \
+ g_critical ("Unimplemented command %s", #cmd); \
+ return FALSE; \
+ } G_STMT_END
+
static gboolean
environment_core_command (RetroCore *self,
unsigned cmd,
@@ -559,23 +569,24 @@ environment_core_command (RetroCore *self,
case RETRO_ENVIRONMENT_SHUTDOWN:
return shutdown (self);
- case RETRO_ENVIRONMENT_GET_CAMERA_INTERFACE:
- case RETRO_ENVIRONMENT_GET_CURRENT_SOFTWARE_FRAMEBUFFER:
- case RETRO_ENVIRONMENT_GET_HW_RENDER_INTERFACE:
- case RETRO_ENVIRONMENT_GET_LOCATION_INTERFACE:
- case RETRO_ENVIRONMENT_GET_PERF_INTERFACE:
- case RETRO_ENVIRONMENT_GET_SENSOR_INTERFACE:
- case RETRO_ENVIRONMENT_GET_USERNAME:
- case RETRO_ENVIRONMENT_SET_AUDIO_CALLBACK:
- case RETRO_ENVIRONMENT_SET_CONTROLLER_INFO:
- case RETRO_ENVIRONMENT_SET_FRAME_TIME_CALLBACK:
- case RETRO_ENVIRONMENT_SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE:
- case RETRO_ENVIRONMENT_SET_MEMORY_MAPS:
- case RETRO_ENVIRONMENT_SET_PERFORMANCE_LEVEL:
- case RETRO_ENVIRONMENT_SET_PROC_ADDRESS_CALLBACK:
- case RETRO_ENVIRONMENT_SET_SERIALIZATION_QUIRKS:
- case RETRO_ENVIRONMENT_SET_SUBSYSTEM_INFO:
- case RETRO_ENVIRONMENT_SET_SUPPORT_ACHIEVEMENTS:
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_CAMERA_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_CURRENT_SOFTWARE_FRAMEBUFFER);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_HW_RENDER_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_LOCATION_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_PERF_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_SENSOR_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_GET_USERNAME);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_AUDIO_CALLBACK);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_CONTROLLER_INFO);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_FRAME_TIME_CALLBACK);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_MEMORY_MAPS);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_PERFORMANCE_LEVEL);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_PROC_ADDRESS_CALLBACK);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_SERIALIZATION_QUIRKS);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_SUBSYSTEM_INFO);
+ RETRO_UNIMPLEMENT_ENVIRONMENT (RETRO_ENVIRONMENT_SET_SUPPORT_ACHIEVEMENTS);
+
default:
if (cmd & RETRO_ENVIRONMENT_EXPERIMENTAL)
g_critical ("Unknown experimental command %d", cmd ^ RETRO_ENVIRONMENT_EXPERIMENTAL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]