More StrictMode work, handling violations in ActivityManagerService.
Also starts to do duplicate-suppression.
Change-Id: I0502f6ab6c45fa319298de4874ecfe44b7829d21
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java
index b4c7edc..2c1f2da 100644
--- a/core/java/android/app/ActivityManagerNative.java
+++ b/core/java/android/app/ActivityManagerNative.java
@@ -1065,8 +1065,9 @@
case HANDLE_APPLICATION_STRICT_MODE_VIOLATION_TRANSACTION: {
data.enforceInterface(IActivityManager.descriptor);
IBinder app = data.readStrongBinder();
+ int violationMask = data.readInt();
ApplicationErrorReport.CrashInfo ci = new ApplicationErrorReport.CrashInfo(data);
- handleApplicationStrictModeViolation(app, ci);
+ handleApplicationStrictModeViolation(app, violationMask, ci);
reply.writeNoException();
return true;
}
@@ -2551,12 +2552,14 @@
}
public void handleApplicationStrictModeViolation(IBinder app,
+ int violationMask,
ApplicationErrorReport.CrashInfo crashInfo) throws RemoteException
{
Parcel data = Parcel.obtain();
Parcel reply = Parcel.obtain();
data.writeInterfaceToken(IActivityManager.descriptor);
data.writeStrongBinder(app);
+ data.writeInt(violationMask);
crashInfo.writeToParcel(data, 0);
mRemote.transact(HANDLE_APPLICATION_STRICT_MODE_VIOLATION_TRANSACTION, data, reply, 0);
reply.readException();