mirror of
https://github.com/Divested-Mobile/DivestOS-Build.git
synced 2025-01-05 12:50:48 -05:00
83deffda2e
18.1: gains working backport for system/bt 19.1: no effective change Signed-off-by: Tavi <tavi@divested.dev>
40 lines
1.8 KiB
Diff
40 lines
1.8 KiB
Diff
From eaed3b4cae32cee9b843fb94f4c9c6aa119e9e90 Mon Sep 17 00:00:00 2001
|
|
From: Mark Renouf <mrenouf@google.com>
|
|
Date: Thu, 20 Jun 2024 16:37:42 -0400
|
|
Subject: [PATCH] Prevent Sharing when FRP enforcement is in effect
|
|
|
|
ADB command to trigger sharing:
|
|
|
|
```
|
|
adb shell 'am start -a android.intent.action.CHOOSER --eu android.intent.extra.INTENT "intent:#Intent;action=android.intent.action.SEND;type=text/plain;S.android.intent.extra.TEXT=Shared%20text;end"'
|
|
```
|
|
|
|
Bug: 327645387
|
|
Test: manual; trigger FRP; attempt to open share sheet using adb
|
|
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:697997f9cb0d7cf943549ca757ccc85c6c02ab74)
|
|
Merged-In: I1db78ab74babe71b516f601be35cf476b5e43271
|
|
Change-Id: I1db78ab74babe71b516f601be35cf476b5e43271
|
|
---
|
|
core/java/com/android/internal/app/ChooserActivity.java | 8 ++++++++
|
|
1 file changed, 8 insertions(+)
|
|
|
|
diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java
|
|
index 9d95a6b346b3b..c741029143eca 100644
|
|
--- a/core/java/com/android/internal/app/ChooserActivity.java
|
|
+++ b/core/java/com/android/internal/app/ChooserActivity.java
|
|
@@ -600,6 +600,14 @@ public void handleMessage(Message msg) {
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
+ if (Settings.Secure.getIntForUser(getContentResolver(),
|
|
+ Settings.Secure.SECURE_FRP_MODE, 0,
|
|
+ getUserId()) == 1) {
|
|
+ Log.e(TAG, "Sharing disabled due to active FRP lock.");
|
|
+ super.onCreate(savedInstanceState);
|
|
+ finish();
|
|
+ return;
|
|
+ }
|
|
final long intentReceivedTime = System.currentTimeMillis();
|
|
getChooserActivityLogger().logSharesheetTriggered();
|
|
// This is the only place this value is being set. Effectively final.
|