This commit is contained in:
Ryan Oldenburg 2022-06-15 16:29:26 -05:00
parent 8797658b47
commit c9bd7fc559

View file

@ -89,9 +89,9 @@ proc decodeDib*(
var rgba: ColorRGBA var rgba: ColorRGBA
if offset + 3 > len - 2: if offset + 3 > len - 2:
failInvalid() failInvalid()
rgba.r = data.readUint8(offset + 2) rgba.r = data[offset + 2]
rgba.g = data.readUint8(offset + 1) rgba.g = data[offset + 1]
rgba.b = data.readUint8(offset + 0) rgba.b = data[offset + 0]
rgba.a = 255 rgba.a = 255
offset += 4 offset += 4
colorPalette[i] = rgba colorPalette[i] = rgba
@ -122,7 +122,7 @@ proc decodeDib*(
if haveBits == 0: if haveBits == 0:
if offset >= len: if offset >= len:
failInvalid() failInvalid()
colorBits = data.readUint8(offset) colorBits = data[offset]
haveBits = 8 haveBits = 8
offset += 1 offset += 1
if (colorBits and 0b1000_0000) == 0: if (colorBits and 0b1000_0000) == 0:
@ -147,7 +147,7 @@ proc decodeDib*(
if haveBits == 0: if haveBits == 0:
if offset >= len: if offset >= len:
failInvalid() failInvalid()
colorBits = data.readUint8(offset) colorBits = data[offset]
haveBits = 8 haveBits = 8
offset += 1 offset += 1
let index = (colorBits and 0b1111_0000) shr 4 let index = (colorBits and 0b1111_0000) shr 4
@ -167,7 +167,7 @@ proc decodeDib*(
if offset >= len: if offset >= len:
failInvalid() failInvalid()
var rgba: ColorRGBA var rgba: ColorRGBA
let index = data.readUint8(offset) let index = data[offset]
offset += 1 offset += 1
if index.int >= colorPaletteSize: if index.int >= colorPaletteSize:
failInvalid() failInvalid()
@ -183,9 +183,9 @@ proc decodeDib*(
if offset + 2 >= len: if offset + 2 >= len:
failInvalid() failInvalid()
var rgba: ColorRGBA var rgba: ColorRGBA
rgba.r = data.readUint8(offset + 2) rgba.r = data[offset + 2]
rgba.g = data.readUint8(offset + 1) rgba.g = data[offset + 1]
rgba.b = data.readUint8(offset + 0) rgba.b = data[offset + 0]
rgba.a = 255 rgba.a = 255
offset += 3 offset += 3
result.unsafe[x, result.height - y - 1] = rgba.rgbx() result.unsafe[x, result.height - y - 1] = rgba.rgbx()