]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/LeiDedupe.pm
www: improve visibility of coderepos
[public-inbox.git] / lib / PublicInbox / LeiDedupe.pm
index 5c83fd8007ce55438f989ebd3a2bc835d05b7373..5fec9384f1e305cae739e17562377f6377504f61 100644 (file)
@@ -3,7 +3,6 @@
 package PublicInbox::LeiDedupe;
 use strict;
 use v5.10.1;
-use PublicInbox::SharedKV;
 use PublicInbox::ContentHash qw(content_hash);
 use Digest::SHA ();
 
@@ -98,8 +97,11 @@ sub new {
        return if ($dd eq 'none' && substr($dst // '', -1) eq '/');
        my $m = "dedupe_$dd";
        $cls->can($m) or die "unsupported dedupe strategy: $dd\n";
-       my $skv = $dd eq 'none' ? undef : PublicInbox::SharedKV->new;
-
+       my $skv;
+       if ($dd ne 'none') {
+               require PublicInbox::SharedKV;
+               $skv = PublicInbox::SharedKV->new;
+       }
        # [ $skv, $eml_cb, $smsg_cb, "dedupe_$dd" ]
        bless [ $skv, undef, undef, $m ], $cls;
 }
@@ -125,7 +127,7 @@ sub prepare_dedupe {
 
 sub pause_dedupe {
        my ($self) = @_;
-       my $skv = $self->[0];
+       my $skv = $self->[0] or return;
        $skv->dbh_release;
        delete($skv->{dbh}) if $skv;
 }