websetup: If setup fails, restore old setup file.

master
Joey Hess 2009-04-22 14:05:37 -04:00
parent 30308664a6
commit 565e5291cd
2 changed files with 7 additions and 2 deletions

View File

@ -403,6 +403,7 @@ sub showform ($$) {
$form->reset(0); # doesn't really make sense here
}
else {
my $oldsetup=readfile($config{setupfile});
IkiWiki::Setup::dump($config{setupfile});
IkiWiki::saveindex();
@ -432,9 +433,12 @@ sub showform ($$) {
print "\n<\/pre>";
if ($ret != 0) {
print '<p class="error">'.
sprintf(gettext("<p class=\"error\">Error: %s exited nonzero (%s)"),
sprintf(gettext("Error: %s exited nonzero (%s). Discarding setup changes."),
join(" ", @command), $ret).
'</p>';
open(OUT, ">", $config{setupfile}) || error("$config{setupfile}: $!");
print OUT $oldsetup;
close OUT;
}
print $tail;

1
debian/changelog vendored
View File

@ -6,6 +6,7 @@ ikiwiki (3.11) UNRELEASED; urgency=low
error can be printed at that point if it's not available,
allowing the admin to see it during wiki setup.
Closes: #520015
* websetup: If setup fails, restore old setup file.
-- Joey Hess <joeyh@debian.org> Tue, 21 Apr 2009 21:41:38 -0400