Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e675b92f authored by Steven Moreland's avatar Steven Moreland Committed by Automerger Merge Worker
Browse files

Merge "Binder: small failed transactions can be due to size" am: e7f547a5...

Merge "Binder: small failed transactions can be due to size" am: e7f547a5 am: 0968da68 am: 093f8191 am: df207e3a

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1971821

Change-Id: I24d50dba18531aedb9c9773eade2202c0879f246
parents 8584be2f df207e3a
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -873,7 +873,7 @@ void signalExceptionForError(JNIEnv* env, jobject obj, status_t err,
            const char* exceptionToThrow;
            char msg[128];
            // TransactionTooLargeException is a checked exception, only throw from certain methods.
            // FIXME: Transaction too large is the most common reason for FAILED_TRANSACTION
            // TODO(b/28321379): Transaction size is the most common cause for FAILED_TRANSACTION
            //        but it is not the only one.  The Binder driver can return BR_FAILED_REPLY
            //        for other reasons also, such as if the transaction is malformed or
            //        refers to an FD that has been closed.  We should change the driver
@@ -891,7 +891,8 @@ void signalExceptionForError(JNIEnv* env, jobject obj, status_t err,
                        ? "android/os/DeadObjectException"
                        : "java/lang/RuntimeException";
                snprintf(msg, sizeof(msg) - 1,
                        "Transaction failed on small parcel; remote process probably died");
                         "Transaction failed on small parcel; remote process probably died, but "
                         "this could also be caused by running out of binder buffer space");
            }
            jniThrowException(env, exceptionToThrow, msg);
        } break;