From 86bea9e0016b2890db8ba83049dd4e89653a0a5e Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 16 Mar 2012 17:29:39 -0400
Subject: [PATCH] Ensure that the welcome message is interpreted as UTF-8 (issue 74)

---
 src/com/gitblit/utils/MarkdownUtils.java |   31 +++++++++++++++++++++++++------
 1 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/src/com/gitblit/utils/MarkdownUtils.java b/src/com/gitblit/utils/MarkdownUtils.java
index 697fa99..a3a1859 100644
--- a/src/com/gitblit/utils/MarkdownUtils.java
+++ b/src/com/gitblit/utils/MarkdownUtils.java
@@ -23,16 +23,40 @@
 import org.tautua.markdownpapers.Markdown;
 import org.tautua.markdownpapers.parser.ParseException;
 
+/**
+ * Utility methods for transforming raw markdown text to html.
+ * 
+ * @author James Moger
+ * 
+ */
 public class MarkdownUtils {
 
+	/**
+	 * Returns the html version of the markdown source text.
+	 * 
+	 * @param markdown
+	 * @return html version of markdown text
+	 * @throws java.text.ParseException
+	 */
 	public static String transformMarkdown(String markdown) throws java.text.ParseException {
 		try {
-			return transformMarkdown(new StringReader(markdown));
+			StringReader reader = new StringReader(markdown);
+			String html = transformMarkdown(reader);
+			reader.close();
+			return html;
 		} catch (NullPointerException p) {
 			throw new java.text.ParseException("Markdown string is null!", 0);
 		}
 	}
 
+	/**
+	 * Returns the html version of the markdown source reader. The reader is
+	 * closed regardless of success or failure.
+	 * 
+	 * @param markdownReader
+	 * @return html version of the markdown text
+	 * @throws java.text.ParseException
+	 */
 	public static String transformMarkdown(Reader markdownReader) throws java.text.ParseException {
 		// Read raw markdown content and transform it to html
 		StringWriter writer = new StringWriter();
@@ -43,11 +67,6 @@
 		} catch (ParseException p) {
 			throw new java.text.ParseException(p.getMessage(), 0);
 		} finally {
-			try {
-				markdownReader.close();
-			} catch (IOException e) {
-				// IGNORE
-			}
 			try {
 				writer.close();
 			} catch (IOException e) {

--
Gitblit v1.9.1