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

Commit a59bf2c5 authored by James Dong's avatar James Dong Committed by Android (Google) Code Review
Browse files

Merge "Update state only if calls to native window are successful" into jb-mr1-dev

parents faa88edb 31d377b7
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -982,11 +982,13 @@ int Camera2Device::StreamAdapter::enqueue_buffer(const camera2_stream_ops_t* w,
    if (err != OK) {
        ALOGE("%s: Error queueing buffer to native window: %s (%d)",
                __FUNCTION__, strerror(-err), err);
        return err;
    }

    stream->mActiveBuffers--;
    stream->mFrameCount++;
    stream->mLastTimestamp = timestamp;
    return err;
    return OK;
}

int Camera2Device::StreamAdapter::cancel_buffer(const camera2_stream_ops_t* w,
@@ -999,10 +1001,18 @@ int Camera2Device::StreamAdapter::cancel_buffer(const camera2_stream_ops_t* w,
        ALOGE("%s: Called when in bad state: %d", __FUNCTION__, stream->mState);
        return INVALID_OPERATION;
    }
    stream->mActiveBuffers--;

    ANativeWindow *a = toANW(w);
    return a->cancelBuffer(a,
    int err = a->cancelBuffer(a,
            container_of(buffer, ANativeWindowBuffer, handle), -1);
    if (err != OK) {
        ALOGE("%s: Error canceling buffer to native window: %s (%d)",
                __FUNCTION__, strerror(-err), err);
        return err;
    }

    stream->mActiveBuffers--;
    return OK;
}

int Camera2Device::StreamAdapter::set_crop(const camera2_stream_ops_t* w,