summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/CameraSource.cpp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-08-11 12:34:32 -0700
committerAndreas Huber <andih@google.com>2010-08-11 12:34:32 -0700
commit56223b96c2f6de5998496fac9d6703f06adc1dca (patch)
treeb62362142b689dde3c98df42ff7763c72b91e9aa /media/libstagefright/CameraSource.cpp
parent701019013dfd15745abf245449c3e17d78bd9570 (diff)
downloadframeworks_av-56223b96c2f6de5998496fac9d6703f06adc1dca.zip
frameworks_av-56223b96c2f6de5998496fac9d6703f06adc1dca.tar.gz
frameworks_av-56223b96c2f6de5998496fac9d6703f06adc1dca.tar.bz2
This code in CameraSource really should hold the lock.
Change-Id: I349520a14776bb83b7edb23fc62052b487246d9a
Diffstat (limited to 'media/libstagefright/CameraSource.cpp')
-rw-r--r--media/libstagefright/CameraSource.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/media/libstagefright/CameraSource.cpp b/media/libstagefright/CameraSource.cpp
index 9c48daf..3e31d61 100644
--- a/media/libstagefright/CameraSource.cpp
+++ b/media/libstagefright/CameraSource.cpp
@@ -244,6 +244,7 @@ void CameraSource::releaseOneRecordingFrame(const sp<IMemory>& frame) {
void CameraSource::signalBufferReturned(MediaBuffer *buffer) {
LOGV("signalBufferReturned: %p", buffer->data());
+ Mutex::Autolock autoLock(mLock);
for (List<sp<IMemory> >::iterator it = mFramesBeingEncoded.begin();
it != mFramesBeingEncoded.end(); ++it) {
if ((*it)->pointer() == buffer->data()) {
@@ -312,6 +313,7 @@ status_t CameraSource::read(
(*buffer)->setObserver(this);
(*buffer)->add_ref();
(*buffer)->meta_data()->setInt64(kKeyTime, frameTime);
+
return OK;
}
}