From fa0afc0f2d7fa3cc6dc5de5dec006c4ecf4c6272 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Mon, 23 Jul 2012 14:04:23 -0400 Subject: [PATCH] Properly decode blobs on reindex (issue 112) --- docs/04_releases.mkd | 1 + src/com/gitblit/LuceneExecutor.java | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/04_releases.mkd b/docs/04_releases.mkd index 1c74c0c..89671c7 100644 --- a/docs/04_releases.mkd +++ b/docs/04_releases.mkd @@ -11,6 +11,7 @@ #### fixes +- Fixed Lucene charset encoding bug when reindexing a repository (issue 112) - Fixed null pointer in LdapUserSerivce if account has a null email address (issue 110) #### changes diff --git a/src/com/gitblit/LuceneExecutor.java b/src/com/gitblit/LuceneExecutor.java index f7a7390..2e09930 100644 --- a/src/com/gitblit/LuceneExecutor.java +++ b/src/com/gitblit/LuceneExecutor.java @@ -412,7 +412,8 @@ if (!deleteIndex(model.name)) { return result; } - try { + try { + String [] encodings = storedSettings.getStrings(Keys.web.blobEncodings).toArray(new String[0]); FileBasedConfig config = getConfig(repository); Set<String> indexedCommits = new TreeSet<String>(); IndexWriter writer = getIndexWriter(model.name); @@ -562,7 +563,7 @@ } in.close(); byte[] content = os.toByteArray(); - String str = new String(content, Constants.CHARACTER_ENCODING); + String str = StringUtils.decodeString(content, encodings); doc.add(new Field(FIELD_CONTENT, str, Store.YES, Index.ANALYZED)); os.reset(); } -- Gitblit v1.9.1