X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMooseX%2FSimpleConfig.pm;h=824158d4eed34ecaf3a73e2225270a518b27687b;hb=d5372a18d0e3c5ac6d90422da6dc00c318921c2d;hp=1a7add579e1017a56a5d75b5170ae40a6cf6c913;hpb=c820699b0acc45a3c14c865989f1d502602e456d;p=gitmo%2FMooseX-SimpleConfig.git diff --git a/lib/MooseX/SimpleConfig.pm b/lib/MooseX/SimpleConfig.pm index 1a7add5..824158d 100644 --- a/lib/MooseX/SimpleConfig.pm +++ b/lib/MooseX/SimpleConfig.pm @@ -3,13 +3,14 @@ package MooseX::SimpleConfig; use Moose::Role; with 'MooseX::ConfigFromFile'; -our $VERSION = '0.06'; +our $VERSION = '0.07'; use Config::Any (); sub get_config_from_file { my ($class, $file) = @_; + $file = $file->() if ref $file eq 'CODE'; my $files_ref = ref $file eq 'ARRAY' ? $file : [$file]; my $can_config_any_args = $class->can('config_any_args'); @@ -24,10 +25,11 @@ sub get_config_from_file { } ); my %raw_config; - foreach my $file_tested ( @{$files_ref} ) { + foreach my $file_tested ( reverse @{$files_ref} ) { if ( ! exists $raw_cfany->{$file_tested} ) { - die qq{Specified configfile '$file_tested' does not exist, } . - q{is empty, or is not readable}; + warn qq{Specified configfile '$file_tested' does not exist, } . + qq{is empty, or is not readable\n}; + next; } my $cfany_hash = $raw_cfany->{$file_tested};