From 46e1ca40b6af36f1ba2c1a6cd117350a0f5752fc Mon Sep 17 00:00:00 2001 From: Steven Moreland Date: Fri, 18 Feb 2022 19:35:01 +0000 Subject: IBinder.transact: clarify return False can't be returned for a oneway call. Bug: N/A (from email thread) Test: N/A Change-Id: Ie2641877e30d00e7c5e195d763e361fd2992c963 --- core/java/android/os/IBinder.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/java/android/os/IBinder.java b/core/java/android/os/IBinder.java index 010459d06e8d..9e47a708162d 100644 --- a/core/java/android/os/IBinder.java +++ b/core/java/android/os/IBinder.java @@ -293,7 +293,10 @@ public interface IBinder { * * @return Returns the result from {@link Binder#onTransact}. A successful call * generally returns true; false generally means the transaction code was not - * understood. + * understood. For a oneway call to a different process false should never be + * returned. If a oneway call is made to code in the same process (usually to + * a C++ or Rust implementation), then there are no oneway semantics, and + * false can still be returned. */ public boolean transact(int code, @NonNull Parcel data, @Nullable Parcel reply, int flags) throws RemoteException; -- cgit v1.2.3-59-g8ed1b