Forráskód Böngészése

fix #534 : check byte size for bom

Shinsuke Sugaya 9 éve
szülő
commit
43b09de15f

+ 2 - 2
src/main/java/org/codelibs/fess/crawler/transformer/FessXpathTransformer.java

@@ -101,8 +101,8 @@ public class FessXpathTransformer extends XpathTransformer implements FessTransf
         try (final BufferedInputStream bis = new BufferedInputStream(responseData.getResponseBody())) {
             final byte[] bomBytes = new byte[UTF8_BOM_SIZE];
             bis.mark(UTF8_BOM_SIZE);
-            bis.read(bomBytes);
-            if (!isUtf8BomBytes(bomBytes)) {
+            final int size = bis.read(bomBytes);
+            if (size < 3 || !isUtf8BomBytes(bomBytes)) {
                 bis.reset();
             }
             final InputSource is = new InputSource(bis);