зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset de151ad69bd6 (bug 1003968) for build bustage. CLOSED TREE
This commit is contained in:
Родитель
c08c7f523b
Коммит
36ef7ebb68
|
@ -554,6 +554,13 @@ const startupPhases = {
|
|||
stat: 1,
|
||||
close: 1,
|
||||
},
|
||||
{
|
||||
// bug 1003968
|
||||
path: "XREAppDist:searchplugins",
|
||||
condition: WIN,
|
||||
ignoreIfUnused: true, // with WebRender enabled this may happen during "before becoming idle"
|
||||
stat: 1,
|
||||
},
|
||||
{
|
||||
path: "XCurProcD:extensions",
|
||||
condition: WIN,
|
||||
|
@ -658,6 +665,13 @@ const startupPhases = {
|
|||
ignoreIfUnused: true,
|
||||
stat: 3,
|
||||
},
|
||||
{
|
||||
// bug 1003968
|
||||
path: "XREAppDist:searchplugins",
|
||||
condition: WIN,
|
||||
ignoreIfUnused: true, // with WebRender enabled this may happen during "before handling user events"
|
||||
stat: 1,
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
|
|
|
@ -64,11 +64,16 @@ static void AppendDistroSearchDirs(nsIProperties* aDirSvc,
|
|||
if (NS_FAILED(rv)) return;
|
||||
searchPlugins->AppendNative(NS_LITERAL_CSTRING("searchplugins"));
|
||||
|
||||
bool exists;
|
||||
rv = searchPlugins->Exists(&exists);
|
||||
if (NS_FAILED(rv) || !exists) return;
|
||||
|
||||
nsCOMPtr<nsIFile> commonPlugins;
|
||||
rv = searchPlugins->Clone(getter_AddRefs(commonPlugins));
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
commonPlugins->AppendNative(NS_LITERAL_CSTRING("common"));
|
||||
array.AppendObject(commonPlugins);
|
||||
rv = commonPlugins->Exists(&exists);
|
||||
if (NS_SUCCEEDED(rv) && exists) array.AppendObject(commonPlugins);
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIPrefBranch> prefs(do_GetService(NS_PREFSERVICE_CONTRACTID));
|
||||
|
@ -87,8 +92,11 @@ static void AppendDistroSearchDirs(nsIProperties* aDirSvc,
|
|||
rv = localePlugins->Clone(getter_AddRefs(defLocalePlugins));
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
defLocalePlugins->AppendNative(defLocale);
|
||||
array.AppendObject(defLocalePlugins);
|
||||
return; // all done
|
||||
rv = defLocalePlugins->Exists(&exists);
|
||||
if (NS_SUCCEEDED(rv) && exists) {
|
||||
array.AppendObject(defLocalePlugins);
|
||||
return; // all done
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -100,8 +108,11 @@ static void AppendDistroSearchDirs(nsIProperties* aDirSvc,
|
|||
rv = localePlugins->Clone(getter_AddRefs(curLocalePlugins));
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
curLocalePlugins->AppendNative(locale);
|
||||
array.AppendObject(curLocalePlugins);
|
||||
return; // all done
|
||||
rv = curLocalePlugins->Exists(&exists);
|
||||
if (NS_SUCCEEDED(rv) && exists) {
|
||||
array.AppendObject(curLocalePlugins);
|
||||
return; // all done
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -155,6 +166,10 @@ DirectoryProvider::AppendingEnumerator::GetNext(nsISupports** aResult) {
|
|||
++i;
|
||||
}
|
||||
|
||||
bool exists;
|
||||
rv = mNext->Exists(&exists);
|
||||
if (NS_SUCCEEDED(rv) && exists) break;
|
||||
|
||||
mNext = nullptr;
|
||||
}
|
||||
|
||||
|
|
|
@ -1062,10 +1062,6 @@ SearchService.prototype = {
|
|||
if (!done) {
|
||||
distDirs.push(dir);
|
||||
}
|
||||
} catch (ex) {
|
||||
if (!(ex instanceof OS.File.Error) || !ex.becauseNoSuchFile) {
|
||||
throw ex;
|
||||
}
|
||||
} finally {
|
||||
iterator.close();
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче