Commit 37720dd5f2b88e2836b80f415299e89a2d9980f5

Philipp Wiesemann 2014-10-29T22:44:35

Fixed gamecontroller database sorting script not sorting the whole database. The script was originally written for an SDL_gamecontrollerdb.h which had groups of mappings separated by single lines starting with a "#". This was changed some time ago to #endif/#if pairs. Because the script assumed only a single #endif in the whole file it no longer worked correctly and only processed the first group.

diff --git a/src/joystick/sort_controllers.py b/src/joystick/sort_controllers.py
index 865127a..af95d65 100755
--- a/src/joystick/sort_controllers.py
+++ b/src/joystick/sort_controllers.py
@@ -40,15 +40,17 @@ def write_controllers():
     controller_guids = {}
 
 for line in input:
-    if ( parsing_controllers ):
+    if (parsing_controllers):
         if (line.startswith("{")):
             output.write(line)
-        elif (line.startswith("#endif")):
+        elif (line.startswith("    NULL")):
             parsing_controllers = False
             write_controllers()
             output.write(line)
-        elif (line.startswith("#")):
+        elif (line.startswith("#if")):
             print("Parsing " + line.strip())
+            output.write(line)
+        elif (line.startswith("#endif")):
             write_controllers()
             output.write(line)
         else: