-
Type:
Bug
-
Status: Closed
-
Priority:
P1: Critical
-
Resolution: Done
-
Affects Version/s: 5.12.0 Beta 2
-
Component/s: GUI: Painting
-
Labels:None
A malformed picture causes qChecksum() to SIGSEGV. The cause of the
segmentation fault is a buffer over-read. This happens when the picture is
first loaded and then the format of the picture is checked using
QPicturePrivate::checkFormat() function. This function uses qChecksum()
function to calculate the checksum of the picture and compare if the returned
CRC-16 checksum is valid. However the malformed picture causes a crash in a
qChecksum() function before the actual checksum validation is made.
The attachment contain everything needed to reproduce.