Skip to content

Commit 0c9cc42

Browse files
committed
Fix crash in RTCMTLVideoView when trying to draw an invalid sized frame
Bug: webrtc:14892 Change-Id: I6321380444fa1de34c64fe72b587f1f5b245fad8 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304000 Commit-Queue: Kári Helgason <[email protected]> Reviewed-by: Kári Helgason <[email protected]> Cr-Commit-Position: refs/heads/main@{#39971}
1 parent 329f545 commit 0c9cc42

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

sdk/objc/components/renderer/metal/RTCMTLI420Renderer.mm

+7
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,13 @@ - (BOOL)setupTexturesForFrame:(nonnull RTC_OBJC_TYPE(RTCVideoFrame) *)frame {
116116
return NO;
117117
}
118118

119+
// Chroma size must be >= 1 as per the Apple documentation, so skip ?x1
120+
// and 1x? frames.
121+
// See: https://bugs.chromium.org/p/webrtc/issues/detail?id=14892
122+
if (frame.width < 2 || frame.height < 2) {
123+
return NO;
124+
}
125+
119126
id<RTC_OBJC_TYPE(RTCI420Buffer)> buffer = [frame.buffer toI420];
120127

121128
// Luma (y) texture.

0 commit comments

Comments
 (0)