LeOSium_webview/LeOS/patches/00Partition-MediaDeviceId-b...

63 lines
2.9 KiB
Diff
Raw Permalink Normal View History

2023-11-18 11:46:19 +01:00
From: uazo <uazo@users.noreply.github.com>
Date: Thu, 28 Sep 2023 07:56:11 +0000
Subject: Partition MediaDeviceId by default
and, in windows, hide the presence of the webcam if the user has not given permission
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/media_device_salt/media_device_salt_service.cc | 8 ++++----
.../browser/renderer_host/media/media_devices_manager.cc | 5 +++++
content/common/features.cc | 4 ++--
3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/components/media_device_salt/media_device_salt_service.cc b/components/media_device_salt/media_device_salt_service.cc
--- a/components/media_device_salt/media_device_salt_service.cc
+++ b/components/media_device_salt/media_device_salt_service.cc
@@ -23,11 +23,11 @@
namespace media_device_salt {
BASE_FEATURE(kMediaDeviceIdPartitioning,
- "MediaDeviceIdPartitioning",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "MediaDeviceIdPartitioning", // keep
+ base::FEATURE_ENABLED_BY_DEFAULT); // enabled
BASE_FEATURE(kMediaDeviceIdRandomSaltsPerStorageKey,
- "MediaDeviceIdRandomSaltsPerStorageKey",
- base::FEATURE_DISABLED_BY_DEFAULT);
+ "MediaDeviceIdRandomSaltsPerStorageKey", // enabled
+ base::FEATURE_ENABLED_BY_DEFAULT); // by default
namespace {
diff --git a/content/browser/renderer_host/media/media_devices_manager.cc b/content/browser/renderer_host/media/media_devices_manager.cc
--- a/content/browser/renderer_host/media/media_devices_manager.cc
+++ b/content/browser/renderer_host/media/media_devices_manager.cc
@@ -763,6 +763,11 @@ void MediaDevicesManager::OnDevicesEnumerated(
has_permissions[i], salt_and_origin, device_info));
}
}
+#if !BUILDFLAG(IS_ANDROID)
+ int video_input_index = static_cast<size_t>(MediaDeviceType::kMediaVideoInput);
+ if (requested_types[video_input_index] && !has_permissions[video_input_index])
+ translation[video_input_index].clear();
+#endif
GetAudioInputCapabilities(video_input_capabilities_requested,
audio_input_capabilities_requested,
diff --git a/content/common/features.cc b/content/common/features.cc
--- a/content/common/features.cc
+++ b/content/common/features.cc
@@ -164,8 +164,8 @@ BASE_FEATURE(kEnsureAllowBindingsIsAlwaysForWebUI,
// media-device enumeration will provide at most one device per type and the
// device IDs will not be available.
BASE_FEATURE(kEnumerateDevicesHideDeviceIDs,
- "EnumerateDevicesHideDeviceIDs",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "EnumerateDevicesHideDeviceIDs", // keep
+ base::FEATURE_ENABLED_BY_DEFAULT); // enabled
// Content counterpart of ExperimentalContentSecurityPolicyFeatures in
// third_party/blink/renderer/platform/runtime_enabled_features.json5. Enables
--
2.25.1