diff --git a/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java b/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java index d7b619bc8..66bfc8b38 100644 --- a/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java +++ b/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java @@ -2180,9 +2180,10 @@ public class SWFInputStream extends InputStream { do { rec = readSHAPERECORD(fillBits, lineBits, shapeNum); if (rec instanceof StyleChangeRecord) { - if (((StyleChangeRecord) rec).stateNewStyles) { - fillBits = ((StyleChangeRecord) rec).numFillBits; - lineBits = ((StyleChangeRecord) rec).numLineBits; + StyleChangeRecord scRec = (StyleChangeRecord) rec; + if (scRec.stateNewStyles) { + fillBits = scRec.numFillBits; + lineBits = scRec.numLineBits; } } ret.add(rec); diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java index fe7c605a0..edda427c4 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java @@ -69,16 +69,19 @@ public class DefineBitsJPEG3Tag extends ImageTag implements AloneTag { @Override public InputStream getImageData() { - if (SWF.hasErrorHeader(imageData)) { - return new ByteArrayInputStream(imageData, 4, imageData.length - 4); - } - return new ByteArrayInputStream(imageData); + return null; } @Override public BufferedImage getImage(List tags) { try { - BufferedImage img = ImageIO.read(getImageData()); + InputStream stream; + if (SWF.hasErrorHeader(imageData)) { + stream = new ByteArrayInputStream(imageData, 4, imageData.length - 4); + } else { + stream = new ByteArrayInputStream(imageData); + } + BufferedImage img = ImageIO.read(stream); if (bitmapAlphaData.length == 0) { return img; } diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java index 8ef049221..3af8faa0a 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java @@ -75,13 +75,13 @@ public class DefineBitsJPEG4Tag extends ImageTag implements AloneTag { @Override public InputStream getImageData() { - return new ByteArrayInputStream(imageData); + return null; } @Override public BufferedImage getImage(List tags) { try { - BufferedImage img = ImageIO.read(getImageData()); + BufferedImage img = ImageIO.read(new ByteArrayInputStream(imageData)); if (bitmapAlphaData.length == 0) { return img; }