Fredrik Lundh avatar Fredrik Lundh committed 454b4d2

Don't try to open files twice if plugins are already loaded.

Comments (0)

Files changed (1)

 
     global _initialized
     if _initialized >= 2:
-        return
+        return 0
 
     visited = {}
 
 
     if OPEN or SAVE:
         _initialized = 2
-
+        return 1
 
 # --------------------------------------------------------------------
 # Codec factories (used by tostring/fromstring and ImageFile.load)
         except (SyntaxError, IndexError, TypeError):
             pass
 
-    init()
+    if init():
 
-    for i in ID:
-        try:
-            factory, accept = OPEN[i]
-            if not accept or accept(prefix):
-                fp.seek(0)
-                return factory(fp, filename)
-        except (SyntaxError, IndexError, TypeError):
-            pass
+        for i in ID:
+            try:
+                factory, accept = OPEN[i]
+                if not accept or accept(prefix):
+                    fp.seek(0)
+                    return factory(fp, filename)
+            except (SyntaxError, IndexError, TypeError):
+                pass
 
     raise IOError("cannot identify image file")
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.