From 11632286bf5861f3395d5c948e9a40127e0ba572 Mon Sep 17 00:00:00 2001 From: Athou Date: Fri, 17 May 2013 14:33:21 +0200 Subject: [PATCH] fix #113 --- src/main/java/com/commafeed/backend/feeds/FeedUtils.java | 8 +++++--- .../com/commafeed/backend/services/FeedUpdateService.java | 7 +++++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/commafeed/backend/feeds/FeedUtils.java b/src/main/java/com/commafeed/backend/feeds/FeedUtils.java index ebc01bd7..35913e3c 100644 --- a/src/main/java/com/commafeed/backend/feeds/FeedUtils.java +++ b/src/main/java/com/commafeed/backend/feeds/FeedUtils.java @@ -24,8 +24,9 @@ public class FeedUtils { return encoding; } - public static String handleContent(String content) { + public static String handleContent(String content, String baseUri) { if (StringUtils.isNotBlank(content)) { + baseUri = StringUtils.trimToEmpty(baseUri); Whitelist whitelist = Whitelist.relaxed(); whitelist.addEnforcedAttribute("a", "target", "_blank"); @@ -33,8 +34,9 @@ public class FeedUtils { whitelist.addAttributes("iframe", "src", "height", "width", "allowfullscreen", "frameborder"); - content = Jsoup.clean(content, "", whitelist, - new OutputSettings().escapeMode(EscapeMode.base)); + content = Jsoup.clean(content, baseUri, whitelist, + new OutputSettings().escapeMode(EscapeMode.base) + .prettyPrint(false)); } return content; } diff --git a/src/main/java/com/commafeed/backend/services/FeedUpdateService.java b/src/main/java/com/commafeed/backend/services/FeedUpdateService.java index 4f941aad..f7287680 100644 --- a/src/main/java/com/commafeed/backend/services/FeedUpdateService.java +++ b/src/main/java/com/commafeed/backend/services/FeedUpdateService.java @@ -50,10 +50,13 @@ public class FeedUpdateService { FeedEntry foundEntry = findEntry(existingEntries, entry); if (foundEntry == null) { + String baseUri = feed.getLink(); FeedEntryContent content = entry.getContent(); - content.setContent(FeedUtils.handleContent(content.getContent())); - String title = FeedUtils.handleContent(content.getTitle()); + content.setContent(FeedUtils.handleContent( + content.getContent(), baseUri)); + String title = FeedUtils.handleContent(content.getTitle(), + baseUri); if (title != null) { content.setTitle(title.substring(0, Math.min(2048, title.length())));