diff --git a/core/lib/Foswiki/Configure/Checker.pm b/core/lib/Foswiki/Configure/Checker.pm index 17bcbe6e59..ca54d9d63a 100755 --- a/core/lib/Foswiki/Configure/Checker.pm +++ b/core/lib/Foswiki/Configure/Checker.pm @@ -102,9 +102,10 @@ sub guessMajorDir { if ( !$Foswiki::cfg{$cfg} || $Foswiki::cfg{$cfg} eq 'NOT SET' ) { require FindBin; $FindBin::Bin =~ /^(.*)$/; - my @root = File::Spec->splitdir($1); + my $scriptDir = $1; + my @root = File::Spec->splitdir($scriptDir); pop(@root); - $Foswiki::cfg{$cfg} = File::Spec->catfile( @root, $dir ); + $Foswiki::cfg{$cfg} = ( $cfg eq 'ScriptDir') ? $scriptDir : File::Spec->catfile( @root, $dir ); $Foswiki::cfg{$cfg} =~ s|\\|/|g; $msg = $this->guessed(); } diff --git a/core/lib/Foswiki/Configure/Checkers/WorkingDir.pm b/core/lib/Foswiki/Configure/Checkers/WorkingDir.pm index 6301441fea..9078beed7c 100644 --- a/core/lib/Foswiki/Configure/Checkers/WorkingDir.pm +++ b/core/lib/Foswiki/Configure/Checkers/WorkingDir.pm @@ -20,6 +20,12 @@ sub check { #my $saveumask = umask(); #umask ( oct(000)); + if ( $mess ) { + $mess .= $this->NOTE('This directory will be created after the guessed settings are saved') unless (-d "$Foswiki::cfg{WorkingDir}" ); + return $mess; # guess will return message if a guess is made. + } + + unless ( -d "$Foswiki::cfg{WorkingDir}" ) { mkdir("$Foswiki::cfg{WorkingDir}", oct(755) ) || return $this->ERROR(