Fix for the issue: TestPreviewWithTransition fails (4133108)

Change-Id: I53eb798f4f86e83f8a4668c7256241367c1ccbe4
diff --git a/libvideoeditor/lvpp/PreviewPlayer.cpp b/libvideoeditor/lvpp/PreviewPlayer.cpp
index babe957..8618221 100755
--- a/libvideoeditor/lvpp/PreviewPlayer.cpp
+++ b/libvideoeditor/lvpp/PreviewPlayer.cpp
@@ -594,9 +594,15 @@
         LOGV("MEDIA_PLAYBACK_COMPLETE");
         //pause before sending event
         pause_l(true /* at eos */);
+
+        //This lock is used to syncronize onStreamDone() in PreviewPlayer and
+        //stopPreview() in PreviewController
+        Mutex::Autolock autoLock(mLockControl);
         notifyListener_l(MEDIA_PLAYBACK_COMPLETE);
 
         mFlags |= AT_EOS;
+        LOGV("onStreamDone end");
+        return;
     }
 }
 
@@ -1490,6 +1496,16 @@
     return OK;
 }
 
+void PreviewPlayer::acquireLock() {
+    LOGV("acquireLock");
+    mLockControl.lock();
+}
+
+void PreviewPlayer::releaseLock() {
+    LOGV("releaseLock");
+    mLockControl.unlock();
+}
+
 status_t PreviewPlayer::resume() {
     LOGV("resume");
     Mutex::Autolock autoLock(mLock);