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

Commit ccb97bd8 authored by Mathias Agopian's avatar Mathias Agopian Committed by Android Git Automerger
Browse files

am ddcb1c2b: Merge "return errors properly in BitTube and SensorEventQueue" into jb-dev

* commit 'ddcb1c2b':
  return errors properly in BitTube and SensorEventQueue
parents 64e71adc ddcb1c2b
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -140,8 +140,7 @@ ssize_t BitTube::sendObjects(const sp<BitTube>& tube,
        ssize_t size = tube->write(vaddr, objSize);
        if (size < 0) {
            // error occurred
            numObjects = -size;
            break;
            return size;
        } else if (size == 0) {
            // no more space
            break;
@@ -160,8 +159,7 @@ ssize_t BitTube::recvObjects(const sp<BitTube>& tube,
        ssize_t size = tube->read(vaddr, objSize);
        if (size < 0) {
            // error occurred
            numObjects = -size;
            break;
            return size;
        } else if (size == 0) {
            // no more messages
            break;
+9 −2
Original line number Diff line number Diff line
@@ -79,14 +79,21 @@ status_t SensorEventQueue::waitForEvent() const
    const int fd = getFd();
    sp<Looper> looper(getLooper());

    int events;
    int32_t result;
    do {
        result = looper->pollOnce(-1);
        if (result == ALOOPER_EVENT_ERROR) {
        result = looper->pollOnce(-1, NULL, &events, NULL);
        if (result == ALOOPER_POLL_ERROR) {
            ALOGE("SensorEventQueue::waitForEvent error (errno=%d)", errno);
            result = -EPIPE; // unknown error, so we make up one
            break;
        }
        if (events & ALOOPER_EVENT_HANGUP) {
            // the other-side has died
            ALOGE("SensorEventQueue::waitForEvent error HANGUP");
            result = -EPIPE; // unknown error, so we make up one
            break;
        }
    } while (result != fd);

    return  (result == fd) ? status_t(NO_ERROR) : result;