extensionUtils: Create and load the extension object when scanning

This reduces some duplicate code when loading extensions.

https://bugzilla.gnome.org/show_bug.cgi?id=677586
This commit is contained in:
Jasper St. Pierre
2012-06-04 18:25:51 -04:00
parent 498b023989
commit 86de6f5861
3 changed files with 17 additions and 36 deletions

View File

@ -171,7 +171,14 @@ const ExtensionFinder = new Lang.Class({
continue;
let uuid = info.get_name();
let extensionDir = dir.get_child(uuid);
this.emit('extension-found', uuid, extensionDir, type);
let existing = extensions[uuid];
if (existing) {
log('Extension %s already installed in %s. %s will not be loaded'.format(uuid, existing.path, extensionDir.get_path()));
continue;
}
let extension = createExtensionObject(uuid, extensionDir, type);
this.emit('extension-found', extension);
}
fileEnum.close(null);
},