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

Commit effd8d55 authored by Andreas Huber's avatar Andreas Huber Committed by The Android Open Source Project
Browse files

Automated import from //branches/master/...@141712,141712

parent 37b5a106
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -492,6 +492,7 @@ status_t CameraService::Client::startPreview()
status_t CameraService::Client::startRecording()
{
    if (mMediaPlayerBeep.get() != NULL) {
        mMediaPlayerBeep->seekTo(0);
        mMediaPlayerBeep->start();
    }
    return startCameraMode(CAMERA_RECORDING_MODE);
@@ -533,6 +534,7 @@ void CameraService::Client::stopRecording()
    }

    if (mMediaPlayerBeep.get() != NULL) {
        mMediaPlayerBeep->seekTo(0);
        mMediaPlayerBeep->start();
    }
    mHardware->stopRecording();
@@ -733,6 +735,7 @@ void CameraService::Client::shutterCallback(void *user)

    // Play shutter sound.
    if (client->mMediaPlayerClick.get() != NULL) {
        client->mMediaPlayerClick->seekTo(0);
        client->mMediaPlayerClick->start();
    }

+8 −3
Original line number Diff line number Diff line
@@ -416,8 +416,12 @@ status_t MediaPlayer::seekTo_l(int msec)

status_t MediaPlayer::seekTo(int msec)
{
    mLockThreadId = getThreadId();
    Mutex::Autolock _l(mLock);
    return seekTo_l(msec);
    status_t result = seekTo_l(msec);
    mLockThreadId = 0;

    return result;
}

status_t MediaPlayer::reset()
@@ -501,8 +505,9 @@ void MediaPlayer::notify(int msg, int ext1, int ext2)
    // this will deadlock.
    // 
    // The threadId hack below works around this for the care of prepare
    // within the same process.

    // and seekTo within the same process.
    // FIXME: Remember, this is a hack, it's not even a hack that is applied
    // consistently for all use-cases, this needs to be revisited.
     if (mLockThreadId != getThreadId()) {
        mLock.lock();
        locked = true;