Bug 1683217 - Require non-zero window size for profiler screenshots in WebRender r=mstange

Differential Revision: https://phabricator.services.mozilla.com/D101685
This commit is contained in:
Barret Rennie 2021-01-14 22:18:54 +00:00
Родитель f05a40ee57
Коммит 2d384c7f0e
2 изменённых файлов: 7 добавлений и 2 удалений

Просмотреть файл

@ -206,8 +206,10 @@ RenderedFrameId RendererOGL::UpdateAndRender(
}
}
if (!mCompositor->MaybeGrabScreenshot(size.ToUnknownSize())) {
mScreenshotGrabber.MaybeGrabScreenshot(this, size.ToUnknownSize());
if (size.Width() != 0 && size.Height() != 0) {
if (!mCompositor->MaybeGrabScreenshot(size.ToUnknownSize())) {
mScreenshotGrabber.MaybeGrabScreenshot(this, size.ToUnknownSize());
}
}
RenderedFrameId frameId = mCompositor->EndFrame(dirtyRects);

Просмотреть файл

@ -115,6 +115,9 @@ impl AsyncScreenshotGrabber {
) -> (AsyncScreenshotHandle, DeviceIntSize) {
let screenshot_size = match self.mode {
AsyncScreenshotGrabberMode::ProfilerScreenshots => {
assert_ne!(window_rect.size.width, 0);
assert_ne!(window_rect.size.height, 0);
let scale = (buffer_size.width as f32 / window_rect.size.width as f32)
.min(buffer_size.height as f32 / window_rect.size.height as f32);