Bläddra i källkod

Merged #151 "Treat UTF-9 and UTF-18 (fake) encodings as UTF-8"

tags/v1.6.1
James Moger 9 år sedan
förälder
incheckning
624a7215a6
1 ändrade filer med 14 tillägg och 0 borttagningar
  1. 14
    0
      src/main/java/com/gitblit/manager/RepositoryManager.java

+ 14
- 0
src/main/java/com/gitblit/manager/RepositoryManager.java Visa fil

@@ -21,6 +21,7 @@ import java.io.IOException;
import java.lang.reflect.Field;
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.charset.Charset;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
@@ -52,6 +53,7 @@ import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.storage.file.WindowCacheConfig;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.FileUtils;
import org.eclipse.jgit.util.RawParseUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

@@ -1895,6 +1897,18 @@ public class RepositoryManager implements IRepositoryManager {
} catch (IllegalArgumentException e) {
logger.error("Failed to configure JGit parameters!", e);
}

try {
// issue-486/ticket-151: UTF-9 & UTF-18
Field field = RawParseUtils.class.getDeclaredField("encodingAliases");
field.setAccessible(true);
Map<String, Charset> encodingAliases = (Map<String, Charset>) field.get(null);
encodingAliases.put("utf-9", RawParseUtils.UTF8_CHARSET);
encodingAliases.put("utf-18", RawParseUtils.UTF8_CHARSET);
logger.info("Alias UTF-9 & UTF-18 encodings as UTF-8 in JGit");
} catch (Throwable t) {
logger.error("Failed to inject UTF-9 & UTF-18 encoding aliases into JGit", t);
}
}

protected void configureCommitCache() {

Laddar…
Avbryt
Spara