We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 251641b + a2c761c commit a3228e4Copy full SHA for a3228e4
perl/Git/SVN.pm
@@ -1663,7 +1663,17 @@ sub tie_for_persistent_memoization {
1663
if ($memo_backend > 0) {
1664
tie %$hash => 'Git::SVN::Memoize::YAML', "$path.yaml";
1665
} else {
1666
- tie %$hash => 'Memoize::Storable', "$path.db", 'nstore';
+ # first verify that any existing file can actually be loaded
1667
+ # (it may have been saved by an incompatible version)
1668
+ my $db = "$path.db";
1669
+ if (-e $db) {
1670
+ use Storable qw(retrieve);
1671
+
1672
+ if (!eval { retrieve($db); 1 }) {
1673
+ unlink $db or die "unlink $db failed: $!";
1674
+ }
1675
1676
+ tie %$hash => 'Memoize::Storable', $db, 'nstore';
1677
}
1678
1679
0 commit comments