fix: don't use private enterprise APIs in MAS build (#31482)
This commit is contained in:
parent
a2d993c9b4
commit
14e2678b00
2 changed files with 37 additions and 0 deletions
|
@ -107,3 +107,4 @@ chore_do_not_use_chrome_windows_in_cryptotoken_webrequestsender.patch
|
||||||
process_singleton.patch
|
process_singleton.patch
|
||||||
fix_expose_decrementcapturercount_in_web_contents_impl.patch
|
fix_expose_decrementcapturercount_in_web_contents_impl.patch
|
||||||
feat_add_data_parameter_to_processsingleton.patch
|
feat_add_data_parameter_to_processsingleton.patch
|
||||||
|
mas_gate_private_enterprise_APIs
|
||||||
|
|
36
patches/chromium/mas_gate_private_enterprise_APIs
Normal file
36
patches/chromium/mas_gate_private_enterprise_APIs
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: VerteDinde <khammond@slack-corp.com>
|
||||||
|
Date: Tue, 19 Oct 2021 16:56:25 -0700
|
||||||
|
Subject: fix: mas gate private enterprise APIs
|
||||||
|
|
||||||
|
Beginning in Electron 15.2.0, Chromium moved several formerly public
|
||||||
|
APIs into the AreDeviceAndUserJoinedToDomain method. Using these APIs
|
||||||
|
in a MAS build will result in rejection from the Apple Store. This
|
||||||
|
patch gates those APIs to non-MAS builds to comply with Apple
|
||||||
|
Store requirements, and returns the default state for MAS builds.
|
||||||
|
|
||||||
|
diff --git a/base/enterprise_util_mac.mm b/base/enterprise_util_mac.mm
|
||||||
|
index bbb851e1cafb37ebaa67e4577598fab25c90fde6..6ab12e5505b5ba545e7e0cc8c93d3ba9a6d0bacc 100644
|
||||||
|
--- a/base/enterprise_util_mac.mm
|
||||||
|
+++ b/base/enterprise_util_mac.mm
|
||||||
|
@@ -168,6 +168,13 @@ MacDeviceManagementStateNew IsDeviceRegisteredWithManagementNew() {
|
||||||
|
DeviceUserDomainJoinState AreDeviceAndUserJoinedToDomain() {
|
||||||
|
static DeviceUserDomainJoinState state = [] {
|
||||||
|
DeviceUserDomainJoinState state{false, false};
|
||||||
|
+#if defined(MAS_BUILD)
|
||||||
|
+ return state;
|
||||||
|
+ }();
|
||||||
|
+
|
||||||
|
+ return state;
|
||||||
|
+}
|
||||||
|
+#else
|
||||||
|
|
||||||
|
@autoreleasepool {
|
||||||
|
ODSession* session = [ODSession defaultSession];
|
||||||
|
@@ -274,5 +281,6 @@ DeviceUserDomainJoinState AreDeviceAndUserJoinedToDomain() {
|
||||||
|
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
} // namespace base
|
Loading…
Reference in a new issue