Commit d7d89dfa authored by Thomas Guilbert's avatar Thomas Guilbert Committed by Commit Bot

Fix VideoEncoder null deref crash

CreateAcceleratedVideoEncoder() returns a nullptr on failure. We need
to check |media_encoder_| before initializing it.

Bug: 1123080
Change-Id: I244c29f85602097a8348c037a0a2a3555c1f12f9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2382012
Auto-Submit: Thomas Guilbert <tguilbert@chromium.org>
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: default avatarDale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#802813}
parent f02e6203
...@@ -477,6 +477,12 @@ void VideoEncoder::ProcessConfigure(Request* request) { ...@@ -477,6 +477,12 @@ void VideoEncoder::ProcessConfigure(Request* request) {
break; break;
} }
if (!media_encoder_) {
// CreateAcceleratedVideoEncoder() can return a nullptr.
HandleError(DOMExceptionCode::kOperationError, "Encoder creation error.");
return;
}
frame_size_ = gfx::Size(config->options.width, config->options.height); frame_size_ = gfx::Size(config->options.width, config->options.height);
auto output_cb = WTF::BindRepeating(&VideoEncoder::MediaEncoderOutputCallback, auto output_cb = WTF::BindRepeating(&VideoEncoder::MediaEncoderOutputCallback,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment