File vbox-python-detection.diff of Package virtualbox

Index: VirtualBox-5.1.8/src/libs/xpcom18a4/python/gen_python_deps.py
===================================================================
--- VirtualBox-5.1.8.orig/src/libs/xpcom18a4/python/gen_python_deps.py
+++ VirtualBox-5.1.8/src/libs/xpcom18a4/python/gen_python_deps.py
@@ -86,7 +86,7 @@ def main(argv):
     else:
         multi = 1
 
-    if multi == 0:
+    if not multi:
         prefixes = ["/usr"]
         versions = [str(sys.version_info[0])+'.'+str(sys.version_info[1]),
                     str(sys.version_info[0])+'.'+str(sys.version_info[1])+'m']
@@ -114,24 +114,25 @@ def main(argv):
             continue
         for p in prefixes:
             c = checkPair(p, v, dllpre, dllsuff, bitness_magic)
-            if c is not None:
+            if c:
                 known[v] = c
                 break
-    keys = list(known.keys())
-    # we want default to be the lowest versioned Python
-    keys.sort()
-    d = None
     # We need separator other than newline, to sneak through $(shell)
     sep = "|"
-    for k in keys:
-        if d is None:
-            d = k
-        vers = k.replace('.', '').upper()
-        print_vars(vers, known[k], sep, bitness_magic)
-    if d is not None:
-        print_vars("DEF", known[d], sep, bitness_magic)
+
+    if not known:
+        # this type of problem should be detected in configure
+        # print_vars("DEF", defaultpaths, sep, bitness_magic)
+        pass
     else:
         print(argv[0] + ": No Python development package found!", file=sys.stderr)
+    if multi:
+        for ver, paths in known.items():
+            print_vars(ver.replace('.', '').upper(), paths, sep, bitness_magic)
+    else:
+        ver = versions[0]
+        paths = known[ver]
+        print_vars(ver.replace('.', ''), paths, sep, bitness_magic)
 
 if __name__ == '__main__':
     main(sys.argv)