From 95f1786bb4bc5e6700360ce5c84898099e79a49c Mon Sep 17 00:00:00 2001 From: Brian Smith Date: Wed, 15 Jun 2022 01:29:53 -0500 Subject: [PATCH] Issue #1905 - Part 4c - Follow Firefox and Safari in reporting "Intel" for Mac ARM64 devices. Based on Mozilla bug 1655285. --- dom/base/Navigator.cpp | 5 ++--- netwerk/protocol/http/nsHttpHandler.cpp | 9 +++++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/dom/base/Navigator.cpp b/dom/base/Navigator.cpp index 30401118b8..ef8a453742 100644 --- a/dom/base/Navigator.cpp +++ b/dom/base/Navigator.cpp @@ -1408,9 +1408,8 @@ Navigator::GetPlatform(nsAString& aPlatform, bool aUsePrefOverriddenValue) aPlatform.AssignLiteral("Win32"); #elif defined(XP_MACOSX) && defined(__ppc__) aPlatform.AssignLiteral("MacPPC"); -#elif defined(XP_MACOSX) && defined(__i386__) - aPlatform.AssignLiteral("MacIntel"); -#elif defined(XP_MACOSX) && defined(__x86_64__) +#elif defined(XP_MACOSX) + // Always return "MacIntel", even on ARM64 macOS like Safari does. aPlatform.AssignLiteral("MacIntel"); #else // XXX Communicator uses compiled-in build-time string defines diff --git a/netwerk/protocol/http/nsHttpHandler.cpp b/netwerk/protocol/http/nsHttpHandler.cpp index 880d157a47..a1ba6d3634 100644 --- a/netwerk/protocol/http/nsHttpHandler.cpp +++ b/netwerk/protocol/http/nsHttpHandler.cpp @@ -825,6 +825,15 @@ nsHttpHandler::InitUserAgentComponents() PR_smprintf_free(buf); } } +#elif defined (XP_MACOSX) +#if defined(__ppc__) + mOscpu.AssignLiteral("PPC Mac OS X"); +#else + mOscpu.AssignLiteral("Intel Mac OS X"); +#endif + SInt32 majorVersion = nsCocoaFeatures::macOSVersionMajor(); + SInt32 minorVersion = nsCocoaFeatures::macOSVersionMinor(); + mOscpu += nsPrintfCString(" %d.%d", majorVersion, minorVersion); #elif defined (XP_UNIX) struct utsname name;