Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3:Update
GraphicsMagick.8689
GraphicsMagick-CVE-2018-5685.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File GraphicsMagick-CVE-2018-5685.patch of Package GraphicsMagick.8689
Index: GraphicsMagick-1.3.25/coders/bmp.c =================================================================== --- GraphicsMagick-1.3.25.orig/coders/bmp.c 2018-01-24 12:41:51.721329448 +0100 +++ GraphicsMagick-1.3.25/coders/bmp.c 2018-01-24 12:42:34.670077042 +0100 @@ -1062,31 +1062,31 @@ static Image *ReadBMPImage(const ImageIn (void) memset(&shift,0,sizeof(PixelPacket)); (void) memset(&quantum_bits,0,sizeof(PixelPacket)); if (bmp_info.red_mask != 0) - while (((bmp_info.red_mask << shift.red) & 0x80000000UL) == 0) + while ((shift.red < 32U) && (((bmp_info.red_mask << shift.red) & 0x80000000UL) == 0)) shift.red++; if (bmp_info.green_mask != 0) - while (((bmp_info.green_mask << shift.green) & 0x80000000UL) == 0) + while ((shift.green < 32U) && (((bmp_info.green_mask << shift.green) & 0x80000000UL) == 0)) shift.green++; if (bmp_info.blue_mask != 0) - while (((bmp_info.blue_mask << shift.blue) & 0x80000000UL) == 0) + while ((shift.blue < 32U) && (((bmp_info.blue_mask << shift.blue) & 0x80000000UL) == 0)) shift.blue++; if (bmp_info.alpha_mask != 0) - while (((bmp_info.alpha_mask << shift.opacity) & 0x80000000UL) == 0) + while ((shift.opacity < 32U) && (((bmp_info.alpha_mask << shift.opacity) & 0x80000000UL) == 0)) shift.opacity++; sample=shift.red; - while (((bmp_info.red_mask << sample) & 0x80000000UL) != 0) + while ((sample < 32U) && (((bmp_info.red_mask << sample) & 0x80000000UL) != 0)) sample++; quantum_bits.red=(Quantum) (sample-shift.red); sample=shift.green; - while (((bmp_info.green_mask << sample) & 0x80000000UL) != 0) + while ((sample < 32U) && (((bmp_info.green_mask << sample) & 0x80000000UL) != 0)) sample++; quantum_bits.green=(Quantum) (sample-shift.green); sample=shift.blue; - while (((bmp_info.blue_mask << sample) & 0x80000000UL) != 0) + while ((sample < 32U) && (((bmp_info.blue_mask << sample) & 0x80000000UL) != 0)) sample++; quantum_bits.blue=(Quantum) (sample-shift.blue); sample=shift.opacity; - while (((bmp_info.alpha_mask << sample) & 0x80000000UL) != 0) + while ((sample < 32U) && (((bmp_info.alpha_mask << sample) & 0x80000000UL) != 0)) sample++; quantum_bits.opacity=(Quantum) (sample-shift.opacity); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor