diff --git a/core/java/android/os/Binder.java b/core/java/android/os/Binder.java index b069fb336d55c..59db8f495dd9b 100644 --- a/core/java/android/os/Binder.java +++ b/core/java/android/os/Binder.java @@ -1235,10 +1235,11 @@ public class Binder implements IBinder { data.readCallingWorkSourceUid()); observer.callEnded(callSession, data.dataSize(), reply.dataSize(), workSourceUid); } + + checkParcel(this, code, reply, "Unreasonably large binder reply buffer"); + reply.recycle(); + data.recycle(); } - checkParcel(this, code, reply, "Unreasonably large binder reply buffer"); - reply.recycle(); - data.recycle(); // Just in case -- we are done with the IPC, so there should be no more strict // mode violations that have gathered for this thread. Either they have been