From a55f5c94ac38b724674a51cb969d201207daa378 Mon Sep 17 00:00:00 2001 From: Julien HENRY Date: Fri, 21 Nov 2014 17:50:49 +0100 Subject: [PATCH] Try to fix handling of BOM on Windows --- .../main/java/org/sonar/batch/source/CodeColorizers.java | 3 ++- .../org/sonar/batch/source/HighlightingCodeBuilder.java | 6 +----- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/sonar-batch/src/main/java/org/sonar/batch/source/CodeColorizers.java b/sonar-batch/src/main/java/org/sonar/batch/source/CodeColorizers.java index 1bc0f315b6f..e3c5e8387a8 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/source/CodeColorizers.java +++ b/sonar-batch/src/main/java/org/sonar/batch/source/CodeColorizers.java @@ -21,6 +21,7 @@ package org.sonar.batch.source; import com.google.common.collect.Lists; import org.apache.commons.io.IOUtils; +import org.apache.commons.io.input.BOMInputStream; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -76,7 +77,7 @@ public class CodeColorizers implements BatchComponent { } Reader reader = null; try { - reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), encoding)); + reader = new BufferedReader(new InputStreamReader(new BOMInputStream(new FileInputStream(file)), encoding)); return new HighlightingRenderer().render(reader, tokenizers); } catch (Exception e) { throw new IllegalStateException("Unable to read source file for colorization", e); diff --git a/sonar-batch/src/main/java/org/sonar/batch/source/HighlightingCodeBuilder.java b/sonar-batch/src/main/java/org/sonar/batch/source/HighlightingCodeBuilder.java index 1f52c21d793..7698a54eff4 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/source/HighlightingCodeBuilder.java +++ b/sonar-batch/src/main/java/org/sonar/batch/source/HighlightingCodeBuilder.java @@ -33,8 +33,6 @@ public class HighlightingCodeBuilder extends HtmlCodeBuilder { private static final Logger LOG = LoggerFactory.getLogger(HighlightingCodeBuilder.class); - private static final char BOM = '\uFEFF'; - private SyntaxHighlightingDataBuilder highlightingBuilder = new SyntaxHighlightingDataBuilder(); private int currentOffset = 0; private static final Pattern START_TAG_PATTERN = Pattern.compile(""); @@ -52,9 +50,7 @@ public class HighlightingCodeBuilder extends HtmlCodeBuilder { @Override public Appendable append(char c) { - if (c != BOM) { - currentOffset++; - } + currentOffset++; return this; } -- 2.39.5