Сам обновляться не буду, но вот ссылка на готовую версию. http://www.easy-share.com/1908933188/firefox-3.5.7-x86_64.ta.... Напомню, на 6 мегабайтов сборка больше потому, что там сохранены файлы английского интерфейса, словаря и добавлен последний 64-битный Adobe Flash Player.
Прошёлся diff'ом. Различия в 8 файлах.
> 3.5.6/dom/src/base/nsJSEnvironment.cpp nsCOMPtr<nsIPrompt> prompt = GetPromptFromContext(ctx);
nsXPIDLString title, msg;
rv = nsContentUtils::GetLocalizedString(nsContentUtils::eDOM_PROPERTIES,
"LowMemoryTitle",
title);
rv |= nsContentUtils::GetLocalizedString(nsContentUtils::eDOM_PROPERTIES,
"LowMemoryMessage",
msg);
//GetStringFromName can return NS_OK and still give NULL string
if (NS_FAILED(rv) || !title || !msg) {
NS_ERROR("Failed to get localized strings.");
JS_ClearPendingException(cx);
return JS_FALSE;
}
prompt->Alert(title, msg);
> 3.5.7/dom/src/base/nsJSEnvironment.cpp
nsCOMPtr<nsIScriptError> errorObject =
do_CreateInstance("@mozilla.org/scripterror;1");
if (errorObject) {
nsXPIDLString msg;
nsContentUtils::GetLocalizedString(nsContentUtils::eDOM_PROPERTIES,
"LowMemoryMessage",
msg);
JSStackFrame *fp, *iterator = nsnull;
fp = ::JS_FrameIterator(cx, &iterator);
PRUint32 lineno = 0;
nsAutoString sourcefile;
if (fp) {
JSScript* script = ::JS_GetFrameScript(cx, fp);
if (script) {
const char* filename = ::JS_GetScriptFilename(cx, script);
if (filename) {
CopyUTF8toUTF16(nsDependentCString(filename), sourcefile);
}
jsbytecode* pc = ::JS_GetFramePC(cx, fp);
if (pc) {
lineno = ::JS_PCToLineNumber(cx, script, pc);
}
}
}
rv = errorObject->Init(msg.get(),
sourcefile.get(),
EmptyString().get(),
lineno, 0, nsIScriptError::errorFlag,
"content javascript");
if (NS_SUCCEEDED(rv)) {
nsCOMPtr<nsIConsoleService> consoleService =
do_GetService(NS_CONSOLESERVICE_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
consoleService->LogMessage(errorObject);
}
}
}
> 3.5.6/extensions/auth/nsAuthSSPI.cpp
rv = MakeSN(serviceName, mServiceName);
if (NS_FAILED(rv))
return rv;
> 3.5.7/extensions/auth/nsAuthSSPI.cpp
if (mPackage == PACKAGE_TYPE_NTLM) {
// (bug 535193) For NTLM, just use the uri host, do not do canonical host lookups.
// The incoming serviceName is in the format: "protocol@hostname", SSPI expects
// "<service class>/<hostname>", so swap the '@' for a '/'.
mServiceName.Assign(serviceName);
PRInt32 index = mServiceName.FindChar('@');
if (index == kNotFound)
return NS_ERROR_UNEXPECTED;
mServiceName.Replace(index, 1, '/');
}
else {
// Kerberos requires the canonical host, MakeSN takes care of this through a
// DNS lookup.
rv = MakeSN(serviceName, mServiceName);
if (NS_FAILED(rv))
return rv;
}
> 3.5.6/toolkit/mozapps/update/src/nsUpdateService.js.in
> 3.5.7/toolkit/mozapps/update/src/nsUpdateService.js.in
// bug 534090 - show the UI for update available notifications when the
// the system has been idle for at least IDLE_TIME without displaying an
// alert notification.
if (page == "updatesavailable") {
var idleService = Cc["@mozilla.org/widget/idleservice;1"].
getService(Ci.nsIIdleService);
const IDLE_TIME = getPref("getIntPref", PREF_APP_UPDATE_IDLETIME, 60);
if (idleService.idleTime / 1000 >= IDLE_TIME) {
this._showUI(parent, uri, features, name, page, update);
return;
}
}
>> Немного старого кода
// bug 534090 - show the UI when idle for update available notifications.
if (page == "updatesavailable") {
this._showUIWhenIdle(parent, uri, features, name, page, update);
return;
}
> 3.5.6/xpcom/ds/nsObserverList.cpp
for (PRInt32 i = mObservers.Length() - 1; i >= 0; --i) {
if (mObservers[i].isWeakRef) {
nsCOMPtr<nsIObserver> o(do_QueryReferent(mObservers[i].asWeak()));
if (o) {
aArray.AppendObject(o);
}
else {
// the object has gone away, remove the weakref
mObservers.RemoveElementAt(i);
}
}
else {
aArray.AppendObject(mObservers[i].asObserver());
> 3.5.7/xpcom/ds/nsObserverList.cpp
nsTArray<ObserverRef> observers(mObservers);
for (PRInt32 i = observers.Length() - 1; i >= 0; --i) {
if (observers[i].isWeakRef) {
nsCOMPtr<nsIObserver> o(do_QueryReferent(observers[i].asWeak()));
if (o) {
aArray.AppendObject(o);
}
else {
// the object has gone away, remove the weakref
mObservers.RemoveElement(observers[i].asWeak());
}
}
else {
aArray.AppendObject(observers[i].asObserver());
> 3.5.6/.hgtags
>3.5.7/.hgtags
>> Вписано в конец файла
a31ccbb61076a1f99b0478e4d250da93b6d8a1f9 SEAMONKEY_2_0_1_BUILD1
a31ccbb61076a1f99b0478e4d250da93b6d8a1f9 SEAMONKEY_2_0_1_RELEASE
a31ccbb61076a1f99b0478e4d250da93b6d8a1f9 SEAMONKEY_2_0_1_BUILD2
a31ccbb61076a1f99b0478e4d250da93b6d8a1f9 SEAMONKEY_2_0_1_RELEASE
a31ccbb61076a1f99b0478e4d250da93b6d8a1f9 SEAMONKEY_2_0_1_RELEASE
655f0b1c7f6a5e9a06a792db8101dfbd9b961333 FIREFOX_3_5_7_BUILD1
655f0b1c7f6a5e9a06a792db8101dfbd9b961333 FIREFOX_3_5_7_RELEASE