call_find_module() handles dup() failure: raise an OSError exception
diff --git a/Python/import.c b/Python/import.c
index de5dc0c..19e975a 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -3567,6 +3567,10 @@
         if (fd != -1)
             fd = dup(fd);
         fclose(fp);
+        if (fd == -1) {
+            PyErr_SetFromErrno(PyExc_OSError);
+            return NULL;
+        }
         fp = NULL;
     }
     if (fd != -1) {