diff --git a/apache/allmanual_form.cgi b/apache/allmanual_form.cgi index 350cb9920..6b280401a 100755 --- a/apache/allmanual_form.cgi +++ b/apache/allmanual_form.cgi @@ -26,7 +26,7 @@ print &ui_form_start("allmanual_save.cgi", "form-data"); print &ui_hidden("file", $in{'file'}),"\n"; # Display nicely too -if ($config{'format_config'} ne '0') { + if (&format_config_allowed()) { $data = &read_file_lines($in{'file'}, 1); &format_config($data); $data = join("\n", @{$data}); diff --git a/apache/allmanual_save.cgi b/apache/allmanual_save.cgi index 8b9118c41..44a1669db 100755 --- a/apache/allmanual_save.cgi +++ b/apache/allmanual_save.cgi @@ -27,7 +27,7 @@ if ($config{'test_manual'}) { } } unlink($temp); -&format_config_file($in{'file'}) if ($config{'format_config'} ne '0'); +&format_config_file($in{'file'}); &webmin_log("manual", undef, undef, { 'file' => $in{'file'} }); &redirect("index.cgi?mode=global"); diff --git a/apache/apache-lib.pl b/apache/apache-lib.pl index 06e3dfeff..584940e07 100755 --- a/apache/apache-lib.pl +++ b/apache/apache-lib.pl @@ -964,6 +964,7 @@ for($i=0; $i<@chname; $i++) { &flush_file_lines(); &unlock_apache_files(); &after_changing(); +&format_modifed_config_files(); } # opt_input(value, name, default, size) @@ -2135,6 +2136,9 @@ sub format_config { my ($conf_lref, $indent) = @_; +# Prevent formatting if not allowed in config +return if (!&format_config_allowed()); + # Default single indent equals 4 spaces $indent ||= 4; $indent = " " x $indent; @@ -2197,6 +2201,9 @@ sub format_config_file { my ($file, $indent) = @_; +# Prevent formatting if not allowed in config +return if (!&format_config_allowed()); + # Lock file &lock_file($file); @@ -2213,16 +2220,16 @@ my $conf_lref = &read_file_lines($file); &unlock_file($file); } -# format_modifed_configs([no-config-test]) +# format_modifed_configs([test-config]) # Formats all modifed Apache configs during the call sub format_modifed_config_files { -my ($conf_already_tested) = @_; +my ($force_config_test) = @_; if($saved_conf_files) { - if ($config{'format_config'} ne '0') { + if (&format_config_allowed()) { # Test config first if not already # tested and don't format on error - if (!$conf_already_tested) { + if ($force_config_test) { if ($config{'test_manual'} || $config{'test_always'}) { my $conf_err = &test_config(); @@ -2239,5 +2246,12 @@ if($saved_conf_files) { } } +# format_config_allowed() +# Checks if formatting config is allowed +sub format_config_allowed +{ +return $config{'format_config'} ne '0'; +} + 1; diff --git a/apache/change_dir.cgi b/apache/change_dir.cgi index c4a51e765..2661f5246 100755 --- a/apache/change_dir.cgi +++ b/apache/change_dir.cgi @@ -41,6 +41,7 @@ else { } &flush_file_lines(); &unlock_file($d->{'file'}); +&format_config_file($d->{'file'}); &update_last_config_change(); &after_changing(); diff --git a/apache/change_files.cgi b/apache/change_files.cgi index 559eea53f..232180a33 100755 --- a/apache/change_files.cgi +++ b/apache/change_files.cgi @@ -36,6 +36,7 @@ else { } &flush_file_lines(); &unlock_file($d->{'file'}); +&format_config_file($d->{'file'}); &update_last_config_change(); &after_changing(); diff --git a/apache/create_dir.cgi b/apache/create_dir.cgi index aae4167a2..a25508314 100755 --- a/apache/create_dir.cgi +++ b/apache/create_dir.cgi @@ -39,6 +39,7 @@ else { &flush_file_lines(); &update_last_config_change(); &unlock_file($vconf->[0]->{'file'}); +&format_config_file($vconf->[0]->{'file'}); &after_changing(); &webmin_log("dir", "create", &virtual_name($v, 1).":$in{'path'}", \%in); diff --git a/apache/create_files.cgi b/apache/create_files.cgi index 4a9ac0ce7..f5c27010b 100755 --- a/apache/create_files.cgi +++ b/apache/create_files.cgi @@ -33,6 +33,7 @@ else { &flush_file_lines(); &update_last_config_change(); &unlock_file($in{'file'}); +&format_config_file($in{'file'}); &after_changing(); &webmin_log("files", "create", "$in{'file'}:$in{'path'}", \%in); diff --git a/apache/create_virt.cgi b/apache/create_virt.cgi index eee517566..ffaf07cf0 100755 --- a/apache/create_virt.cgi +++ b/apache/create_virt.cgi @@ -246,6 +246,7 @@ foreach my $m (@{$dirsect->{'members'}}) { &save_directive_struct(undef, $virt, $conf, $conf); &flush_file_lines(); &unlock_file($f); +&format_config_file($f); &update_last_config_change(); &unlock_apache_files(); diff --git a/apache/manual_form.cgi b/apache/manual_form.cgi index 8246ca414..9554cc2bf 100755 --- a/apache/manual_form.cgi +++ b/apache/manual_form.cgi @@ -93,9 +93,7 @@ for($i=$start; $i<=$end; $i++) { } # Display nicely too -if ($config{'format_config'} ne '0') { - &format_config(\@buf); -} +&format_config(\@buf); $buf = join("\n", @buf); print &ui_textarea("directives", $buf, 15, 80, undef, undef, diff --git a/apache/manual_save.cgi b/apache/manual_save.cgi index 2529d6779..578a27f38 100755 --- a/apache/manual_save.cgi +++ b/apache/manual_save.cgi @@ -64,7 +64,7 @@ if (!defined($start)) { $end = @$lref - 1; } splice(@$lref, $start, $end-$start+1, @dirs); -&format_config($lref) if ($config{'format_config'} ne '0'); +&format_config($lref); &flush_file_lines(); if ($config{'test_manual'}) { $err = &test_config(); diff --git a/apache/save_vserv.cgi b/apache/save_vserv.cgi index 7e5a98d66..cc94a8f1d 100755 --- a/apache/save_vserv.cgi +++ b/apache/save_vserv.cgi @@ -139,6 +139,7 @@ else { &flush_file_lines(); &after_changing(); &unlock_file($vconf->{'file'}); + &format_config_file($vconf->{'file'}); &webmin_log("virt", "save", &virtual_name($vconf, 1), \%in); &redirect(""); }