diff --git a/Lib/os.py b/Lib/os.py
index 674a7d7..a49e7ce 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -369,22 +369,13 @@
             # Note that scandir is global in this module due
             # to earlier import-*.
             scandir_it = scandir(top)
+        entries = list(scandir(top))
     except OSError as error:
         if onerror is not None:
             onerror(error)
         return
 
-    while True:
-        try:
-            try:
-                entry = next(scandir_it)
-            except StopIteration:
-                break
-        except OSError as error:
-            if onerror is not None:
-                onerror(error)
-            return
-
+    for entry in entries:
         try:
             is_dir = entry.is_dir()
         except OSError:
