forked from AuroraMiddleware/gtk
Handle bmps with more than 8 bits per channel. (#172584, David Costanzo)
2006-12-22 Matthias Clasen <mclasen@redhat.com> * io-bmp.c (decode_bitmasks): Handle bmps with more than 8 bits per channel. (#172584, David Costanzo)
This commit is contained in:
parent
21e120cc44
commit
030a61a931
@ -1,5 +1,9 @@
|
||||
2006-12-22 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* io-bmp.c (decode_bitmasks): Handle bmps
|
||||
with more than 8 bits per channel. (#172584,
|
||||
David Costanzo)
|
||||
|
||||
* io-bmp.c: Handle offsets more carefully. (#172188,
|
||||
David Costanzo)
|
||||
|
||||
|
@ -605,6 +605,23 @@ decode_bitmasks (guchar *buf,
|
||||
}
|
||||
}
|
||||
|
||||
if (State->r_bits > 8) {
|
||||
State->r_shift += State->r_bits - 8;
|
||||
State->r_bits = 8;
|
||||
}
|
||||
if (State->g_bits > 8) {
|
||||
State->g_shift += State->g_bits - 8;
|
||||
State->g_bits = 8;
|
||||
}
|
||||
if (State->b_bits > 8) {
|
||||
State->b_shift += State->b_bits - 8;
|
||||
State->b_bits = 8;
|
||||
}
|
||||
if (State->a_bits > 8) {
|
||||
State->a_shift += State->a_bits - 8;
|
||||
State->a_bits = 8;
|
||||
}
|
||||
|
||||
State->read_state = READ_STATE_DATA;
|
||||
State->BufferDone = 0;
|
||||
State->BufferSize = State->LineWidth;
|
||||
|
Loading…
Reference in New Issue
Block a user