Skip to content

Commit b287661

Browse files
committed
Don't return null on failed metadata load
1 parent 57cb575 commit b287661

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

python/utils.py

+5-8
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,6 @@ def initInterface(pointer):
118118

119119
def findPlugins(path):
120120
""" for internal use: return list of plugins in given path """
121-
plugins = []
122121
for plugin in glob.glob(path + "/*"):
123122
if not os.path.isdir(plugin):
124123
continue
@@ -134,12 +133,10 @@ def findPlugins(path):
134133
try:
135134
cp.readfp(codecs.open(metadataFile, "r", "utf8"))
136135
except:
137-
return None # reading of metadata file failed
136+
cp = None
138137

139138
pluginName = os.path.basename(plugin)
140-
plugins.append( (pluginName, cp) )
141-
142-
return plugins
139+
yield (pluginName, cp)
143140

144141

145142
def updateAvailablePlugins():
@@ -148,11 +145,11 @@ def updateAvailablePlugins():
148145
plugins = []
149146
metadata_parser = {}
150147
for pluginpath in plugin_paths:
151-
for p in findPlugins(pluginpath):
152-
pluginName = p[0]
148+
for pluginName, parser in findPlugins(pluginpath):
149+
if parser is None: continue
153150
if pluginName not in plugins:
154151
plugins.append(pluginName)
155-
metadata_parser[pluginName] = p[1]
152+
metadata_parser[pluginName] = parser
156153

157154
global available_plugins
158155
available_plugins = plugins

0 commit comments

Comments
 (0)