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

Commit abf8a2c6 authored by Jun Jiang's avatar Jun Jiang
Browse files

Add error message for hints when exceptions occur during binder transactions.



It can help to detect some kind of error, such as why GraphicBuffer::flatten
will crash when handle is null.

Change-Id: I703cd035b96edb7afb324cf24d8230d4e55f4f52
Signed-off-by: default avatarJun Jiang <jun.a.jiang@intel.com>
parent 108ed9fa
Loading
Loading
Loading
Loading
+6 −1
Original line number Original line Diff line number Diff line
@@ -25,6 +25,7 @@
#include <binder/ProcessState.h>
#include <binder/ProcessState.h>
#include <binder/TextOutput.h>
#include <binder/TextOutput.h>


#include <errno.h>
#include <utils/Debug.h>
#include <utils/Debug.h>
#include <utils/Log.h>
#include <utils/Log.h>
#include <utils/String8.h>
#include <utils/String8.h>
@@ -1229,7 +1230,11 @@ status_t Parcel::read(FlattenableHelperInterface& val) const
    status_t err = NO_ERROR;
    status_t err = NO_ERROR;
    for (size_t i=0 ; i<fd_count && err==NO_ERROR ; i++) {
    for (size_t i=0 ; i<fd_count && err==NO_ERROR ; i++) {
        fds[i] = dup(this->readFileDescriptor());
        fds[i] = dup(this->readFileDescriptor());
        if (fds[i] < 0) err = BAD_VALUE;
        if (fds[i] < 0) {
            err = BAD_VALUE;
            ALOGE("dup() failed in Parcel::read, i is %d, fds[i] is %d, fd_count is %d, error: %s",
                i, fds[i], fd_count, strerror(errno));
        }
    }
    }


    if (err == NO_ERROR) {
    if (err == NO_ERROR) {