Merge "Don't allow using or allocating a buffer after the first state transition" into klp-dev am: 922ad6183e
am: 0893c50bcf

Change-Id: I819b55a95ff50c51488bac50c43fea8b2244a410
diff --git a/media/libstagefright/omx/OMXNodeInstance.cpp b/media/libstagefright/omx/OMXNodeInstance.cpp
index 1221e7e..6a352f7 100644
--- a/media/libstagefright/omx/OMXNodeInstance.cpp
+++ b/media/libstagefright/omx/OMXNodeInstance.cpp
@@ -574,6 +574,12 @@
     // We do not support metadata mode changes past buffer allocation
     mSailed = true;
 
+    if (!mSailed) {
+        ALOGE("b/35467458");
+        android_errorWriteLog(0x534e4554, "35467458");
+        return BAD_VALUE;
+    }
+
     // metadata buffers are not connected cross process
     BufferMeta *buffer_meta;
     bool isMeta = mUsingMetadata[portIndex];
@@ -837,6 +843,12 @@
     // We do not support metadata mode changes past buffer allocation
     mSailed = true;
 
+    if (!mSailed) {
+        ALOGE("b/35467458");
+        android_errorWriteLog(0x534e4554, "35467458");
+        return BAD_VALUE;
+    }
+
     BufferMeta *buffer_meta = new BufferMeta(size, portIndex);
 
     OMX_BUFFERHEADERTYPE *header;
@@ -880,6 +892,12 @@
     // We do not support metadata mode changes past buffer allocation
     mSailed = true;
 
+    if (!mSailed) {
+        ALOGE("b/35467458");
+        android_errorWriteLog(0x534e4554, "35467458");
+        return BAD_VALUE;
+    }
+
     // metadata buffers are not connected cross process
     bool isMeta = mUsingMetadata[portIndex];
     bool copy = !(crossProcess && isMeta);