UWC - Improved Trac Converter image params handling
diff --git a/src/com/atlassian/uwc/converters/trac/ImageParamConverter.java b/src/com/atlassian/uwc/converters/trac/ImageParamConverter.java
index 1969de3..d098517 100644
--- a/src/com/atlassian/uwc/converters/trac/ImageParamConverter.java
+++ b/src/com/atlassian/uwc/converters/trac/ImageParamConverter.java
@@ -21,7 +21,7 @@
 
 	}
 	
-	Pattern image = Pattern.compile("(?<!\\\\)!([^!|]+\\|)([^!]+)(?<!\\\\)!");
+	Pattern image = Pattern.compile("(?<!\\\\)!([^!|\n]+\\|)([^!\n]+)(?<!\\\\)!");
     protected String convertImageParams(String input) {
 		Matcher imageFinder = image.matcher(input);
 		StringBuffer sb = new StringBuffer();
diff --git a/src/com/atlassian/uwc/converters/trac/ImageParamConverterTest.java b/src/com/atlassian/uwc/converters/trac/ImageParamConverterTest.java
index 14b5d2d..cae44e1 100644
--- a/src/com/atlassian/uwc/converters/trac/ImageParamConverterTest.java
+++ b/src/com/atlassian/uwc/converters/trac/ImageParamConverterTest.java
@@ -27,9 +27,9 @@
 	
 	public void testConvertImageParams_WidthNoKey() {
 		String input, expected, actual;
-		input = "!pagename:filename.png|50%!\n" + 
+		input = "\n!pagename:filename.png|50%!\n" + 
 				"";
-		expected = "!pagename:filename.png|thumbnail!\n";
+		expected = "\n!pagename:filename.png|thumbnail!\n";
 		actual = tester.convertImageParams(input);
 		assertNotNull(actual);
 		assertEquals(expected, actual);
@@ -41,4 +41,28 @@
 		assertNotNull(actual);
 		assertEquals(expected, actual);
 	}
+	
+	public void testConvertImageParams_AvoidProblemCase() {
+		String input, expected, actual;
+		//problem with newline in there was sidestepped by adding newline to neg char class
+		input = "!abc.gif! random \n | pipe !def.gif! tada ";
+		expected = input;
+		actual = tester.convertImageParams(input);
+		assertNotNull(actual);
+		assertEquals(expected, actual);
+		//problem with no newlines is harder and less likely
+//		input = "!abc.gif! random  | pipe !def.gif! tada ";
+//		expected = input;
+//		actual = tester.convertImageParams(input);
+//		assertNotNull(actual);
+//		assertEquals(expected, actual);
+
+		//don't match
+		input = "abc \\!abc.gif|50%!";
+		expected = input;
+		actual = tester.convertImageParams(input);
+		assertNotNull(actual);
+		assertEquals(expected, actual);
+
+	}
 }
diff --git a/src/com/atlassian/uwc/ui/UWCForm3.java b/src/com/atlassian/uwc/ui/UWCForm3.java
index e60a2e4..e25eddd 100644
--- a/src/com/atlassian/uwc/ui/UWCForm3.java
+++ b/src/com/atlassian/uwc/ui/UWCForm3.java
@@ -92,7 +92,7 @@
 	private static final String LOGIN_TOOLTIP = "This is the username of an account on the Confluence server with write privileges to the space where you\'re adding content.";
 	private static final String ADDRESS_TOOLTIP = "This is the url to Confluence. Example: 'localhost:8080'";
 	private static final String VERSION_INDICATOR = ""; 
-	public static final String VERSION_NUMBER = "3.13.1_Snapshot_010512";
+	public static final String VERSION_NUMBER = "3.13.1_Snapshot_011212";
 	private static final Dimension TABBEDPANE_SIZE = new Dimension(420, 475);
 	public static final String APP_NAME = "Universal Wiki Converter";
 	private static final int BASIC_RIGHT_MARGIN = 35;