Bugzilla – Attachment 22441 Details for
Bug 58356
VUL-0: CVE-2004-0691: qt: bmp parser overflow
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
IDP Log In
|
Forgot Password
[patch]
fix
qimage.diff (text/plain), 1.27 KB, created by
Stephan Kulow
on 2004-07-28 19:41:01 UTC
(
hide
)
Description:
fix
Filename:
MIME Type:
Creator:
Stephan Kulow
Created:
2004-07-28 19:41:01 UTC
Size:
1.27 KB
patch
obsolete
>Index: src/kernel/qimage.cpp >=================================================================== >RCS file: /home/kde/qt-copy/src/kernel/qimage.cpp,v >retrieving revision 1.62 >diff -u -3 -p -u -r1.62 qimage.cpp >--- src/kernel/qimage.cpp 25 Jun 2004 12:00:23 -0000 1.62 >+++ src/kernel/qimage.cpp 28 Jul 2004 11:38:56 -0000 >@@ -4821,6 +4821,7 @@ bool read_dib( QDataStream& s, int offse > if ( comp == BMP_RLE8 ) { // run length compression > int x=0, y=0, b; > register uchar *p = line[h-1]; >+ int remaining_size = bpl; > while ( y < h ) { > if ( (b=d->getch()) == EOF ) > break; >@@ -4830,6 +4831,7 @@ bool read_dib( QDataStream& s, int offse > x = 0; > y++; > p = line[h-y-1]; >+ remaining_size = bpl; > break; > case 1: // end of image > case EOF: // end of file >@@ -4839,9 +4841,10 @@ bool read_dib( QDataStream& s, int offse > x += d->getch(); > y += d->getch(); > p = line[h-y-1] + x; >+ remaining_size = bpl - x; > break; > default: // absolute mode >- if ( d->readBlock( (char *)p, b ) != b ) >+ if ( b > remaining_size || d->readBlock( (char *)p, b ) != b ) > return FALSE; > if ( (b & 1) == 1 ) > d->getch(); // align on word boundary
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
|
Diff
Attachments on
bug 58356
: 22441 |
22446
|
22598
|
22599
|
22674
|
22675
|
22680
|
22691
|
22692