From 73f1adb2e84b8b9cd4045bcdd7d9afa72d3875b5 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 27 Nov 2012 17:13:03 -0500
Subject: [PATCH] Added short commit id column to log and history tables (issue 168)

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

diff --git a/src/com/gitblit/utils/MarkdownUtils.java b/src/com/gitblit/utils/MarkdownUtils.java
index c7c1f9f..0b8c9c5 100644
--- a/src/com/gitblit/utils/MarkdownUtils.java
+++ b/src/com/gitblit/utils/MarkdownUtils.java
@@ -20,6 +20,7 @@
 import java.io.StringReader;
 import java.io.StringWriter;
 
+import org.slf4j.LoggerFactory;
 import org.tautua.markdownpapers.Markdown;
 import org.tautua.markdownpapers.parser.ParseException;
 
@@ -40,7 +41,12 @@
 	 */
 	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 (IllegalArgumentException e) {
+			throw new java.text.ParseException(e.getMessage(), 0);
 		} catch (NullPointerException p) {
 			throw new java.text.ParseException("Markdown string is null!", 0);
 		}
@@ -61,14 +67,16 @@
 			Markdown md = new Markdown();
 			md.transform(markdownReader, writer);
 			return writer.toString().trim();
+		} catch (StringIndexOutOfBoundsException e) {
+			LoggerFactory.getLogger(MarkdownUtils.class).error("MarkdownPapers failed to parse Markdown!", e);
+			throw new java.text.ParseException(e.getMessage(), 0);
 		} catch (ParseException p) {
+			LoggerFactory.getLogger(MarkdownUtils.class).error("MarkdownPapers failed to parse Markdown!", p);
 			throw new java.text.ParseException(p.getMessage(), 0);
+		} catch (Exception e) {
+			LoggerFactory.getLogger(MarkdownUtils.class).error("MarkdownPapers failed to parse Markdown!", e);
+			throw new java.text.ParseException(e.getMessage(), 0);
 		} finally {
-			try {
-				markdownReader.close();
-			} catch (IOException e) {
-				// IGNORE
-			}
 			try {
 				writer.close();
 			} catch (IOException e) {

--
Gitblit v1.9.1