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 $form->reset(0); # doesn't really make sense here
} }
else { else {
my $oldsetup=readfile($config{setupfile});
IkiWiki::Setup::dump($config{setupfile}); IkiWiki::Setup::dump($config{setupfile});
IkiWiki::saveindex(); IkiWiki::saveindex();
@ -432,9 +433,12 @@ sub showform ($$) {
print "\n<\/pre>"; print "\n<\/pre>";
if ($ret != 0) { if ($ret != 0) {
print '<p class="error">'. 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). join(" ", @command), $ret).
'</p>'; '</p>';
open(OUT, ">", $config{setupfile}) || error("$config{setupfile}: $!");
print OUT $oldsetup;
close OUT;
} }
print $tail; 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, error can be printed at that point if it's not available,
allowing the admin to see it during wiki setup. allowing the admin to see it during wiki setup.
Closes: #520015 Closes: #520015
* websetup: If setup fails, restore old setup file.
-- Joey Hess <joeyh@debian.org> Tue, 21 Apr 2009 21:41:38 -0400 -- Joey Hess <joeyh@debian.org> Tue, 21 Apr 2009 21:41:38 -0400