/** handle transparency chunk; modifies palette */
private void handletRNS() throws IOException {
int chunkLen = chunkLength;
- if (palette == null) throw new IOException("tRNS chunk encountered before pLTE");
+ if (palette == null) {
+ if (Log.on) Log.log(this, "warning: tRNS chunk encountered before pLTE; ignoring alpha channel");
+ inputStream.skip(chunkLength);
+ return;
+ }
int len = palette.length;
if (colorType == 3) {
transparency = true;