Merge remote-tracking branch 'origin/tracking' into custom

This commit is contained in:
roytam1 2024-04-16 15:16:58 +08:00
commit aed4ca8fc5
9 changed files with 50 additions and 5 deletions

View file

@ -678,6 +678,18 @@ Navigator::CpuHasSSE2()
return mozilla::supports_sse2();
}
bool
Navigator::CpuHasAVX()
{
return mozilla::supports_avx();
}
bool
Navigator::CpuHasAVX2()
{
return mozilla::supports_avx2();
}
void
Navigator::RefreshMIMEArray()
{

View file

@ -173,6 +173,8 @@ public:
bool JavaEnabled(ErrorResult& aRv);
uint64_t HardwareConcurrency();
bool CpuHasSSE2();
bool CpuHasAVX();
bool CpuHasAVX2();
bool TaintEnabled()
{
return false;

View file

@ -3550,6 +3550,8 @@ nsGlobalWindow::GetEventTargetParent(EventChainPreVisitor& aVisitor)
aVisitor.mCanHandle = true;
// Middle/right click shouldn't dispatch click event, use auxclick to instead.
// Note: mDoc should always exist here, but check just in case someone yanked
// it out from under us.
if (mDoc && mDoc->IsXULDocument()) {
aVisitor.mForceContentDispatch = true; //FIXME! Bug 329119
}

View file

@ -211,6 +211,10 @@ partial interface Navigator {
*/
[ChromeOnly]
readonly attribute boolean cpuHasSSE2;
[ChromeOnly]
readonly attribute boolean cpuHasAVX;
[ChromeOnly]
readonly attribute boolean cpuHasAVX2;
};
// nsIDOMNavigatorDesktopNotification

View file

@ -246,7 +246,11 @@ DoesTextureSharingWorkInternal(ID3D11Device *device, DXGI_FORMAT format, UINT bi
}
RefPtr<IDXGIKeyedMutex> sourceSharedMutex;
texture->QueryInterface(__uuidof(IDXGIKeyedMutex), (void**)getter_AddRefs(sourceSharedMutex));
HRESULT hr = texture->QueryInterface(__uuidof(IDXGIKeyedMutex), (void**)getter_AddRefs(sourceSharedMutex));
if (FAILED(hr) || !sourceSharedMutex) {
gfxCriticalNote << "Failed to acquire IDXGIKeyedMutex; texture sharing disabled.";
return false;
}
if (FAILED(sourceSharedMutex->AcquireSync(0, 30*1000))) {
gfxCriticalError() << "DoesD3D11TextureSharingWork_SourceMutexTimeout";
// only wait for 30 seconds
@ -306,9 +310,12 @@ DoesTextureSharingWorkInternal(ID3D11Device *device, DXGI_FORMAT format, UINT bi
}
RefPtr<IDXGIKeyedMutex> sharedMutex;
sharedResource->QueryInterface(__uuidof(IDXGIKeyedMutex), (void**)getter_AddRefs(sharedMutex));
{
HRESULT hr;
hr = sharedResource->QueryInterface(__uuidof(IDXGIKeyedMutex), (void**)getter_AddRefs(sharedMutex));
if (FAILED(hr) || !sharedMutex) {
gfxCriticalNote << "Failed to acquire IDXGIKeyedMutex; texture sharing disabled.";
return false;
}
{ // Scope for mutex lock.
AutoTextureLock lock(sharedMutex, hr, 30*1000);
if (FAILED(hr)) {
gfxCriticalError() << "DoesD3D11TextureSharingWork_AcquireSyncTimeout";

View file

@ -39,6 +39,10 @@ var snapshotFormatters = {
$("application-box").textContent = data.name;
$("useragent-box").textContent = data.userAgent;
$("os-box").textContent = data.osVersion;
let cpucaps = navigator.cpuHasSSE2?"SSE2 ":"";
cpucaps += navigator.cpuHasAVX?"AVX ":"";
cpucaps += navigator.cpuHasAVX2?"AVX2 ":"";
$("cpucap-box").textContent = cpucaps;
$("binary-box").textContent = Services.dirsvc.get("XREExeF", Ci.nsIFile).path;
$("supportLink").href = data.supportURL;
let version = Services.appinfo.version;

View file

@ -142,6 +142,15 @@
</td>
</tr>
<tr>
<th class="column">
&aboutSupport.appBasicsCPUCaps;
</th>
<td id="cpucap-box">
</td>
</tr>
<tr class="no-copy">
<th class="column">
&aboutSupport.appBasicsBinary;

View file

@ -47,6 +47,7 @@ Windows/Mac use the term "Folder" instead of "Directory" -->
<!ENTITY aboutSupport.appBasicsBuildConfig "Build Configuration">
<!ENTITY aboutSupport.appBasicsUserAgent "User Agent">
<!ENTITY aboutSupport.appBasicsOS "OS">
<!ENTITY aboutSupport.appBasicsCPUCaps "CPU Capabilities">
<!ENTITY aboutSupport.appBasicsMemoryUse "Memory Use">
<!ENTITY aboutSupport.appBasicsPerformance "Performance">

View file

@ -66,6 +66,7 @@ this.UpdateUtils = {
let custom = prefBranch.getCharPref(PREF_APP_UPDATE_CUSTOM, "");
let distribution = prefBranch.getCharPref(PREF_APP_DISTRIBUTION, "default");
let distributionVersion = prefBranch.getCharPref(PREF_APP_DISTRIBUTION_VERSION, "default");
let navigator = Services.appShell.hiddenDOMWindow.navigator;
let substs = [
[/%ID%/g, Services.appinfo.ID],
@ -81,7 +82,10 @@ this.UpdateUtils = {
[/%PLATFORM_VERSION%/g, Services.appinfo.platformVersion],
[/%DISTRIBUTION%/g, distribution],
[/%DISTRIBUTION_VERSION%/g, distributionVersion],
[/%LOCALE%/g, this.Locale]
[/%LOCALE%/g, this.Locale],
[/%CPU_SSE2%/g, navigator.cpuHasSSE2],
[/%CPU_AVX%/g, navigator.cpuHasAVX],
[/%CPU_AVX2%/g, navigator.cpuHasAVX2]
];
substs.forEach(([_subst, _value]) => aUpdateURL = aUpdateURL.replace(_subst, _value));