summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2015-06-19 10:28:20 -0700
committerChristopher Tate <ctate@google.com>2015-06-19 11:17:24 -0700
commit8a2ce3c7519d30daab37e0754d8f2b2f527af24e (patch)
tree879958d5bfe6474851ea31a43c5c6e9b776ea017
parentc20c1eec9e222870b08c079898dbc334858994cc (diff)
downloadframeworks_base-8a2ce3c7519d30daab37e0754d8f2b2f527af24e.zip
frameworks_base-8a2ce3c7519d30daab37e0754d8f2b2f527af24e.tar.gz
frameworks_base-8a2ce3c7519d30daab37e0754d8f2b2f527af24e.tar.bz2
Debug logging for a certain class of binder transaction failures
Bug 21801759 Change-Id: I9973d4ffb9450e510a4e1c64e2eae1489ce93054
-rw-r--r--core/java/android/app/ApplicationThreadNative.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/core/java/android/app/ApplicationThreadNative.java b/core/java/android/app/ApplicationThreadNative.java
index 1461380..e178087 100644
--- a/core/java/android/app/ApplicationThreadNative.java
+++ b/core/java/android/app/ApplicationThreadNative.java
@@ -35,6 +35,9 @@ import android.os.RemoteException;
import android.os.IBinder;
import android.os.Parcel;
import android.os.ParcelFileDescriptor;
+import android.os.TransactionTooLargeException;
+import android.util.Log;
+
import com.android.internal.app.IVoiceInteractor;
import com.android.internal.content.ReferrerIntent;
@@ -921,8 +924,13 @@ class ApplicationThreadProxy implements IApplicationThread {
info.writeToParcel(data, 0);
compatInfo.writeToParcel(data, 0);
data.writeInt(processState);
- mRemote.transact(SCHEDULE_CREATE_SERVICE_TRANSACTION, data, null,
- IBinder.FLAG_ONEWAY);
+ try {
+ mRemote.transact(SCHEDULE_CREATE_SERVICE_TRANSACTION, data, null,
+ IBinder.FLAG_ONEWAY);
+ } catch (TransactionTooLargeException e) {
+ Log.e("CREATE_SERVICE", "Binder failure starting service; service=" + info);
+ throw e;
+ }
data.recycle();
}