Issue #25596: Falls back to listdir in glob for bytes paths on Windows.
diff --git a/Lib/glob.py b/Lib/glob.py
index 002cd92..7c3cccb 100644
--- a/Lib/glob.py
+++ b/Lib/glob.py
@@ -118,13 +118,22 @@
         else:
             dirname = os.curdir
     try:
-        with os.scandir(dirname) as it:
-            for entry in it:
-                try:
-                    if not dironly or entry.is_dir():
-                        yield entry.name
-                except OSError:
-                    pass
+        if os.name == 'nt' and isinstance(dirname, bytes):
+            names = os.listdir(dirname)
+            if dironly:
+                for name in names:
+                    if os.path.isdir(os.path.join(dirname, name)):
+                        yield name
+            else:
+                yield from names
+        else:
+            with os.scandir(dirname) as it:
+                for entry in it:
+                    try:
+                        if not dironly or entry.is_dir():
+                            yield entry.name
+                    except OSError:
+                        pass
     except OSError:
         return