Problem: A borked process sending a Gfx::Bitmap (inside BitmapSequence) or a Gfx::ShareableBitmap over IPC could set BitmapFormat::Invalid as the format field. The receiving process then aborted while decoding the message — an IPC-reachable crash. Cause: The helper that both decoders use for validating the format read off the wire accepts BitmapFormat::Invalid. The decoders go on to build a bitmap with that format. But that triggers an assert — because minimum_pitch only knows the four real pixel formats. Fix: Drop BitmapFormat::Invalid from is_valid_bitmap_format. It’s an indicator of an absent/unknown format, never one a real bitmap can have. And any real bitmap is never encoded with it. So, both BitmapSequence and ShareableBitmap decode now return a clean decode error for it. |
||
|---|---|---|
| .. | ||
| test-inputs | ||
| BenchmarkJPEGLoader.cpp | ||
| CMakeLists.txt | ||
| TestBitmapExport.cpp | ||
| TestColor.cpp | ||
| TestImageDecoder.cpp | ||
| TestImageWriter.cpp | ||
| TestQuad.cpp | ||
| TestRect.cpp | ||
| TestShareableBitmap.cpp | ||
| TestWOFF.cpp | ||
| TestWOFF2.cpp | ||
| TestYUVData.cpp | ||