Fix Mac Giant Surface Fuzzer Crash
TestRunnerBindings::SetBackingScaleFactor allows our test suites to simulate device scale factor changes. Currently it caps the scale factor at 100x, based on previous crashes seen in https://crbug.com/899482 However we hit similar crashes for lower scale factors when working with larger initial sizes. In this fuzz case 800x600 size, but a scale request of 1x10^17. There are a few different potential crashes as a result: - 100x = gfx::Size::GetCheckedArea overflows int (80000x60000) - 50x = GLES2DecoderImpl::TexStorageImpl fails with "dimensions out of range" - 20x = GL ERROR :GL_OUT_OF_MEMORY - 19x = no error I've elected to go with 15x. However there is nothing explicit in this API to prevent similar crashes when using larger sized surfaces. No displays currently use scale factors this large, so there is no issue to be concerned of in production. Bug: 900271 Change-Id: Icd0f75813b07f98bc51c56535000f2513cbceaa1 Reviewed-on: https://chromium-review.googlesource.com/c/1352612Reviewed-by:Pavel Feldman <pfeldman@chromium.org> Commit-Queue: Jonathan Ross <jonross@chromium.org> Cr-Commit-Position: refs/heads/master@{#611892}
Showing
Please register or sign in to comment