remember autofiles that were tried and failed to be added
This way, if an autofile is registered for a file that already exists, it is remembered that it was tried, and it doesn't get recreated when removed.master
parent
fd6fb4c507
commit
167964b686
|
@ -682,17 +682,26 @@ sub gen_autofile ($$$) {
|
||||||
my $pages=shift;
|
my $pages=shift;
|
||||||
my $del=shift;
|
my $del=shift;
|
||||||
|
|
||||||
if (srcfile($autofile, 1) || file_pruned($autofile)) {
|
if (file_pruned($autofile)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
my ($file)="$config{srcdir}/$autofile" =~ /$config{wiki_file_regexp}/; # untaint
|
my ($file)="$config{srcdir}/$autofile" =~ /$config{wiki_file_regexp}/; # untaint
|
||||||
if (! defined $file || -l $file || -d _ || -e _) {
|
if (! defined $file) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((!defined $file) ||
|
# Remember autofiles that were tried, and never try them again later.
|
||||||
(exists $wikistate{$autofiles{$autofile}{plugin}}{autofile}{$autofile})) {
|
if (exists $wikistate{$autofiles{$autofile}{plugin}}{autofile}{$autofile}) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$wikistate{$autofiles{$autofile}{plugin}}{autofile}{$autofile}=1;
|
||||||
|
|
||||||
|
if (srcfile($autofile, 1) || file_pruned($autofile)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-l $file || -d _ || -e _) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -706,7 +715,6 @@ sub gen_autofile ($$$) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$autofiles{$autofile}{generator}->();
|
$autofiles{$autofile}{generator}->();
|
||||||
$wikistate{$autofiles{$autofile}{plugin}}{autofile}{$autofile}=1;
|
|
||||||
$pages->{$page}=1;
|
$pages->{$page}=1;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue