X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=site_perl%2FConf.pm;h=0b2d5b328122ef3a1e63282613058dcfb1d7cab1;hp=96a284f78c15d64bf3151e2bc1e5896d43432e25;hb=7613e14fd13aabb2a44bb26ca8640053f44930ea;hpb=dbc31295b1b0b442e6e5cfc6cf64123ef1141c31 diff --git a/site_perl/Conf.pm b/site_perl/Conf.pm index 96a284f78..0b2d5b328 100644 --- a/site_perl/Conf.pm +++ b/site_perl/Conf.pm @@ -53,7 +53,12 @@ Returns the directory. sub dir { my($self) = @_; - $self->{dir}; + my $dir = $self->{dir}; + -e $dir or die "FATAL: $dir doesn't exist!"; + -d $dir or die "FATAL: $dir isn't a directory!"; + -r $dir or die "FATAL: Can't read $dir!"; + -x $dir or die "FATAL: $dir not searchable (executable)!"; + $dir; } =item config @@ -68,11 +73,13 @@ sub config { my $fh = new IO::File "<$dir/$file" or return; if ( wantarray ) { map { - /^(.*)$/ or die "Illegal line in $dir/$file:\n$_\n"; + /^(.*)$/ + or die "Illegal line (array context) in $dir/$file:\n$_\n"; $1; } <$fh>; } else { - <$fh> =~ /^(.*)$/ or die "Illegal line in $dir/$file:\n$_\n"; + <$fh> =~ /^(.*)$/ + or die "Illegal line (scalar context) in $dir/$file:\n$_\n"; $1; } } @@ -107,7 +114,13 @@ Ivan Kohler 98-sep-6 sub exists forgot to fetch $dir ivan@sisd.com 98-sep-27 $Log: Conf.pm,v $ -Revision 1.2 1998-11-13 04:08:44 ivan +Revision 1.4 1999-05-11 10:09:13 ivan +try to diagnose strange multiple-line problem + +Revision 1.3 1999/03/29 01:29:33 ivan +die unless the configuration directory exists + +Revision 1.2 1998/11/13 04:08:44 ivan no default default_dir (ironic)