CCodec: translate C2_NO_MEMORY to NO_MEMORY in onError callback
Bug: 181873019
Bug: 181874733
Test: atest CtsMediaTestCases:MediaCodecCapabilitiesTest
Test: atest CtsMediaTestCases:ResourceManagerTest
Change-Id: I4eff1dcb994a49859797155fe49f76bfa34e000b
diff --git a/media/codec2/sfplugin/CCodec.cpp b/media/codec2/sfplugin/CCodec.cpp
index 6cf0058..5c83586 100644
--- a/media/codec2/sfplugin/CCodec.cpp
+++ b/media/codec2/sfplugin/CCodec.cpp
@@ -557,13 +557,15 @@
}
// Report to MediaCodec
- // Note: for now we do not propagate the error code to MediaCodec as we would need
- // to translate to a MediaCodec error.
+ // Note: for now we do not propagate the error code to MediaCodec
+ // except for C2_NO_MEMORY, as we would need to translate to a MediaCodec error.
sp<CCodec> codec(mCodec.promote());
if (!codec || !codec->mCallback) {
return;
}
- codec->mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
+ codec->mCallback->onError(
+ errorCode == C2_NO_MEMORY ? NO_MEMORY : UNKNOWN_ERROR,
+ ACTION_CODE_FATAL);
}
virtual void onDeath(