GenericSource: restore mLock state in error cases

initFromDataSource and onPrepareAsync are called with mLock acquired.
When initFromDataSource returns with error, notifyPreparedAndCleanup
will be called and it requires mLock acquired.

Test: cts
Bug: 122564587
Change-Id: I430dbc5f1f30c06223ea22438282bd388174f7df
diff --git a/media/libmediaplayerservice/nuplayer/GenericSource.cpp b/media/libmediaplayerservice/nuplayer/GenericSource.cpp
index 831a012..0807896 100644
--- a/media/libmediaplayerservice/nuplayer/GenericSource.cpp
+++ b/media/libmediaplayerservice/nuplayer/GenericSource.cpp
@@ -171,6 +171,7 @@
 
     if (extractor == NULL) {
         ALOGE("initFromDataSource, cannot create extractor!");
+        mLock.lock();
         return UNKNOWN_ERROR;
     }
 
@@ -179,6 +180,7 @@
     size_t numtracks = extractor->countTracks();
     if (numtracks == 0) {
         ALOGE("initFromDataSource, source has no track!");
+        mLock.lock();
         return UNKNOWN_ERROR;
     }