summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Feed/Role/DeDupe.pm10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/Feed/Role/DeDupe.pm b/lib/Feed/Role/DeDupe.pm
index 9cd19c8..4e470d7 100644
--- a/lib/Feed/Role/DeDupe.pm
+++ b/lib/Feed/Role/DeDupe.pm
@@ -144,7 +144,7 @@ sub mark_seen {
sub _entry_id {
my ($self,$e) = @_;
- my $id = $e->id;
+ my $id = $e->id // $e->link;
$self->log->trace("_entry_id: $id");
@@ -158,9 +158,11 @@ sub _entry_id {
if ($self->dedupe_use_body) {
my $body = $e->content->body;
- my $content_digest = sha1_base64(encode('utf-8',$body));
- $id .= '-' . $content_digest;
- $self->log->trace("_entry_id: (with content) $id");
+ if ($body) {
+ my $content_digest = sha1_base64(encode('utf-8',$body));
+ $id .= '-' . $content_digest;
+ $self->log->trace("_entry_id: (with content) $id");
+ }
}
return encode('utf-8',$id);