Browse Source

Improve error description for invalid scancodes

Camilla Löwy 4 years ago
parent
commit
56092814f3
4 changed files with 9 additions and 3 deletions
  1. 1 1
      src/cocoa_window.m
  2. 6 0
      src/null_window.c
  3. 1 1
      src/win32_window.c
  4. 1 1
      src/x11_window.c

+ 1 - 1
src/cocoa_window.m

@@ -1536,7 +1536,7 @@ const char* _glfwPlatformGetScancodeName(int scancode)
     if (scancode < 0 || scancode > 0xff ||
         _glfw.ns.keycodes[scancode] == GLFW_KEY_UNKNOWN)
     {
-        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode");
+        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode %i", scancode);
         return NULL;
     }
 

+ 6 - 0
src/null_window.c

@@ -524,6 +524,12 @@ const char* _glfwPlatformGetClipboardString(void)
 
 const char* _glfwPlatformGetScancodeName(int scancode)
 {
+    if (scancode < GLFW_KEY_SPACE || scancode > GLFW_KEY_LAST)
+    {
+        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode %i", scancode);
+        return NULL;
+    }
+
     switch (scancode)
     {
         case GLFW_KEY_APOSTROPHE:

+ 1 - 1
src/win32_window.c

@@ -2108,7 +2108,7 @@ const char* _glfwPlatformGetScancodeName(int scancode)
     if (scancode < 0 || scancode > (KF_EXTENDED | 0xff) ||
         _glfw.win32.keycodes[scancode] == GLFW_KEY_UNKNOWN)
     {
-        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode");
+        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode %i", scancode);
         return NULL;
     }
 

+ 1 - 1
src/x11_window.c

@@ -2891,7 +2891,7 @@ const char* _glfwPlatformGetScancodeName(int scancode)
     if (scancode < 0 || scancode > 0xff ||
         _glfw.x11.keycodes[scancode] == GLFW_KEY_UNKNOWN)
     {
-        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode");
+        _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode %i", scancode);
         return NULL;
     }