diff --git a/src/main/java/com/commafeed/backend/feed/FeedUtils.java b/src/main/java/com/commafeed/backend/feed/FeedUtils.java index 88e0daad..bb863a80 100644 --- a/src/main/java/com/commafeed/backend/feed/FeedUtils.java +++ b/src/main/java/com/commafeed/backend/feed/FeedUtils.java @@ -184,13 +184,13 @@ public class FeedUtils { return null; } - String pi = new String(ArrayUtils.subarray(bytes, 0, index + 1)); - index = StringUtils.indexOf(pi, "encoding="); + String pi = new String(ArrayUtils.subarray(bytes, 0, index + 1)).replace('\'', '"'); + index = StringUtils.indexOf(pi, "encoding=\""); if (index == -1) { return null; } String encoding = pi.substring(index + 10, pi.length()); - encoding = encoding.substring(0, Math.max(encoding.indexOf(' ') - 1, 0)); + encoding = encoding.substring(0, encoding.indexOf('"')); return encoding; } diff --git a/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java b/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java index f333ca4e..7115f330 100644 --- a/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java +++ b/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java @@ -60,6 +60,6 @@ public class FeedUtilsTest { Assert.assertNull(FeedUtils.extractDeclaredEncoding("".getBytes())); Assert.assertEquals("UTF-8", FeedUtils.extractDeclaredEncoding("".getBytes())); Assert.assertEquals("UTF-8", FeedUtils.extractDeclaredEncoding("".getBytes())); - + Assert.assertEquals("UTF-8", FeedUtils.extractDeclaredEncoding("".getBytes())); } }