Loading media/libstagefright/omx/GraphicBufferSource.cpp +19 −2 Original line number Original line Diff line number Diff line Loading @@ -346,6 +346,12 @@ void GraphicBufferSource::suspend(bool suspend) { } else if (err != OK) { } else if (err != OK) { ALOGW("suspend: acquireBuffer returned err=%d", err); ALOGW("suspend: acquireBuffer returned err=%d", err); break; break; } else if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("suspend: corrupted buffer index (%d)", item.mBuf); break; } } --mNumFramesAvailable; --mNumFramesAvailable; Loading Loading @@ -396,6 +402,10 @@ bool GraphicBufferSource::fillCodecBuffer_l() { // now what? fake end-of-stream? // now what? fake end-of-stream? ALOGW("fillCodecBuffer_l: acquireBuffer returned err=%d", err); ALOGW("fillCodecBuffer_l: acquireBuffer returned err=%d", err); return false; return false; } else if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("fillCodecBuffer_l: corrupted buffer index (%d)", item.mBuf); return false; } } mNumFramesAvailable--; mNumFramesAvailable--; Loading Loading @@ -696,10 +706,17 @@ void GraphicBufferSource::onFrameAvailable() { BufferQueue::BufferItem item; BufferQueue::BufferItem item; status_t err = mBufferQueue->acquireBuffer(&item, 0); status_t err = mBufferQueue->acquireBuffer(&item, 0); if (err == OK) { if (err == OK) { if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("onFrameAvailable: corrupted buffer index (%d)", item.mBuf); return; } // If this is the first time we're seeing this buffer, add it to our // If this is the first time we're seeing this buffer, add it to our // slot table. // slot table. if (item.mGraphicBuffer != NULL) { if (item.mGraphicBuffer != NULL) { ALOGV("fillCodecBuffer_l: setting mBufferSlot %d", item.mBuf); ALOGV("onFrameAvailable: setting mBufferSlot %d", item.mBuf); mBufferSlot[item.mBuf] = item.mGraphicBuffer; mBufferSlot[item.mBuf] = item.mGraphicBuffer; } } mBufferQueue->releaseBuffer(item.mBuf, item.mFrameNumber, mBufferQueue->releaseBuffer(item.mBuf, item.mFrameNumber, Loading Loading
media/libstagefright/omx/GraphicBufferSource.cpp +19 −2 Original line number Original line Diff line number Diff line Loading @@ -346,6 +346,12 @@ void GraphicBufferSource::suspend(bool suspend) { } else if (err != OK) { } else if (err != OK) { ALOGW("suspend: acquireBuffer returned err=%d", err); ALOGW("suspend: acquireBuffer returned err=%d", err); break; break; } else if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("suspend: corrupted buffer index (%d)", item.mBuf); break; } } --mNumFramesAvailable; --mNumFramesAvailable; Loading Loading @@ -396,6 +402,10 @@ bool GraphicBufferSource::fillCodecBuffer_l() { // now what? fake end-of-stream? // now what? fake end-of-stream? ALOGW("fillCodecBuffer_l: acquireBuffer returned err=%d", err); ALOGW("fillCodecBuffer_l: acquireBuffer returned err=%d", err); return false; return false; } else if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("fillCodecBuffer_l: corrupted buffer index (%d)", item.mBuf); return false; } } mNumFramesAvailable--; mNumFramesAvailable--; Loading Loading @@ -696,10 +706,17 @@ void GraphicBufferSource::onFrameAvailable() { BufferQueue::BufferItem item; BufferQueue::BufferItem item; status_t err = mBufferQueue->acquireBuffer(&item, 0); status_t err = mBufferQueue->acquireBuffer(&item, 0); if (err == OK) { if (err == OK) { if (item.mBuf < 0 || item.mBuf >= BufferQueue::NUM_BUFFER_SLOTS) { // Invalid buffer index ALOGW("onFrameAvailable: corrupted buffer index (%d)", item.mBuf); return; } // If this is the first time we're seeing this buffer, add it to our // If this is the first time we're seeing this buffer, add it to our // slot table. // slot table. if (item.mGraphicBuffer != NULL) { if (item.mGraphicBuffer != NULL) { ALOGV("fillCodecBuffer_l: setting mBufferSlot %d", item.mBuf); ALOGV("onFrameAvailable: setting mBufferSlot %d", item.mBuf); mBufferSlot[item.mBuf] = item.mGraphicBuffer; mBufferSlot[item.mBuf] = item.mGraphicBuffer; } } mBufferQueue->releaseBuffer(item.mBuf, item.mFrameNumber, mBufferQueue->releaseBuffer(item.mBuf, item.mFrameNumber, Loading