SDL: Print the mapping used for a gamepad in testgamepad

From 9e14559e806f375efdbc964a809e145b2467c35d Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Wed, 1 Mar 2023 16:37:56 -0800
Subject: [PATCH] Print the mapping used for a gamepad in testgamepad

---
 test/testgamepad.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/test/testgamepad.c b/test/testgamepad.c
index 6f9508413589..8825b6840f5a 100644
--- a/test/testgamepad.c
+++ b/test/testgamepad.c
@@ -106,6 +106,7 @@ static void PrintJoystickInfo(SDL_JoystickID instance_id)
     const char *name;
     const char *path;
     const char *description;
+    const char *mapping = NULL;
 
     SDL_GetJoystickGUIDString(SDL_GetJoystickInstanceGUID(instance_id), guid, sizeof(guid));
 
@@ -149,6 +150,7 @@ static void PrintJoystickInfo(SDL_JoystickID instance_id)
             description = "Gamepad";
             break;
         }
+        mapping = SDL_GetGamepadInstanceMapping(instance_id);
     } else {
         name = SDL_GetJoystickInstanceName(instance_id);
         path = SDL_GetJoystickInstancePath(instance_id);
@@ -159,6 +161,9 @@ static void PrintJoystickInfo(SDL_JoystickID instance_id)
             SDL_GetJoystickInstanceVendor(instance_id),
             SDL_GetJoystickInstanceProduct(instance_id),
             SDL_GetJoystickInstancePlayerIndex(instance_id));
+    if (mapping) {
+        SDL_Log("Mapping: %s\n", mapping);
+    }
 }
 
 static void UpdateWindowTitle()