
- Add the manifest - Add Pixel 2 series - Add some missing patches - More DNS files - Drop Silence in 19.1 Signed-off-by: Tad <tad@spotco.us>
43 lines
2.0 KiB
Diff
43 lines
2.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Dmitry Muhomor <muhomor.dmitry@gmail.com>
|
|
Date: Tue, 14 Dec 2021 18:17:11 +0200
|
|
Subject: [PATCH] skip reportNetworkConnectivity() when permission is revoked
|
|
|
|
---
|
|
framework/src/android/net/ConnectivityManager.java | 8 ++++++++
|
|
1 file changed, 8 insertions(+)
|
|
|
|
diff --git a/framework/src/android/net/ConnectivityManager.java b/framework/src/android/net/ConnectivityManager.java
|
|
index fd37a9746..8857b7996 100644
|
|
--- a/framework/src/android/net/ConnectivityManager.java
|
|
+++ b/framework/src/android/net/ConnectivityManager.java
|
|
@@ -25,6 +25,7 @@ import static android.net.NetworkRequest.Type.TRACK_DEFAULT;
|
|
import static android.net.NetworkRequest.Type.TRACK_SYSTEM_DEFAULT;
|
|
import static android.net.QosCallback.QosCallbackRegistrationException;
|
|
|
|
+import android.Manifest;
|
|
import android.annotation.CallbackExecutor;
|
|
import android.annotation.IntDef;
|
|
import android.annotation.NonNull;
|
|
@@ -42,6 +43,7 @@ import android.compat.annotation.UnsupportedAppUsage;
|
|
import android.content.ComponentName;
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
+import android.content.pm.PackageManager;
|
|
import android.net.ConnectivityDiagnosticsManager.DataStallReport.DetectionMethod;
|
|
import android.net.IpSecManager.UdpEncapsulationSocket;
|
|
import android.net.SocketKeepalive.Callback;
|
|
@@ -3139,6 +3141,12 @@ public class ConnectivityManager {
|
|
*/
|
|
public void reportNetworkConnectivity(@Nullable Network network, boolean hasConnectivity) {
|
|
printStackTrace();
|
|
+ if (mContext.checkSelfPermission(Manifest.permission.INTERNET) != PackageManager.PERMISSION_GRANTED) {
|
|
+ // ConnectivityService enforces this by throwing an unexpected SecurityException,
|
|
+ // which puts GMS into a crash loop. Also useful for other apps that don't expect that
|
|
+ // INTERNET permission might get revoked.
|
|
+ return;
|
|
+ }
|
|
try {
|
|
mService.reportNetworkConnectivity(network, hasConnectivity);
|
|
} catch (RemoteException e) {
|