Support Java_Buffer_toI420 returning null Bug: webrtc:12877 Change-Id: Ib9c8c62b350e644b17a3194e4208df6b06a4d9b1 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222582 Reviewed-by: Xavier Lepaul <xalep@webrtc.org> Reviewed-by: Evan Shrubsole <eshr@google.com> Reviewed-by: Henrik Boström <hbos@webrtc.org> Commit-Queue: Fabian Bergmark <fabianbergmark@google.com> Cr-Commit-Position: refs/heads/master@{#34296}
diff --git a/sdk/android/src/jni/video_frame.cc b/sdk/android/src/jni/video_frame.cc index dd3562f..9872803 100644 --- a/sdk/android/src/jni/video_frame.cc +++ b/sdk/android/src/jni/video_frame.cc
@@ -179,6 +179,10 @@ JNIEnv* jni = AttachCurrentThreadIfNeeded(); ScopedJavaLocalRef<jobject> j_i420_buffer = Java_Buffer_toI420(jni, j_video_frame_buffer_); + // In case I420 conversion fails, we propagate the nullptr. + if (j_i420_buffer.is_null()) { + return nullptr; + } // We don't need to retain the buffer because toI420 returns a new object that // we are assumed to take the ownership of.