diff options
| -rw-r--r-- | main/src/cgeo/geocaching/utils/BaseUtils.java | 2 | ||||
| -rw-r--r-- | tests/src/cgeo/geocaching/utils/BaseUtilsTest.java | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/utils/BaseUtils.java b/main/src/cgeo/geocaching/utils/BaseUtils.java index 2f34e4e..82e48cb 100644 --- a/main/src/cgeo/geocaching/utils/BaseUtils.java +++ b/main/src/cgeo/geocaching/utils/BaseUtils.java @@ -41,7 +41,7 @@ public final class BaseUtils { } if (null != result) { Matcher remover = PATTERN_REMOVE_NONPRINTABLE.matcher(result); - result = remover.replaceAll(""); + result = remover.replaceAll(" "); return trim ? new String(result).trim() : new String(result); // Java copies the whole page String, when matching with regular expressions diff --git a/tests/src/cgeo/geocaching/utils/BaseUtilsTest.java b/tests/src/cgeo/geocaching/utils/BaseUtilsTest.java index fe790af..2cedb2f 100644 --- a/tests/src/cgeo/geocaching/utils/BaseUtilsTest.java +++ b/tests/src/cgeo/geocaching/utils/BaseUtilsTest.java @@ -5,6 +5,8 @@ import cgeo.geocaching.test.mock.MockedCache; import android.test.AndroidTestCase; +import java.util.regex.Pattern; + public class BaseUtilsTest extends AndroidTestCase { public static void testRegEx() { String page = MockedCache.readCachePage("GC2CJPF"); @@ -23,4 +25,9 @@ public class BaseUtilsTest extends AndroidTestCase { assertEquals("foo bar baz ", BaseUtils.replaceWhitespace(" foo\n\tbar \r baz ")); } + public static void testControlCharactersCleanup() { + Pattern patternAll = Pattern.compile("(.*)", Pattern.DOTALL); + assertEquals("some control characters removed", BaseUtils.getMatch("some" + "\u001C" + "control" + (char) 0x1D + "characters removed", patternAll, "")); + assertEquals("newline also removed", BaseUtils.getMatch("newline\nalso\nremoved", patternAll, "")); + } } |
