a little cleanup before a dev release
[p5sagit/Config-Any.git] / lib / Config / Any.pm
index 022fcd1..d1a3b0e 100644 (file)
@@ -14,7 +14,7 @@ Config::Any - Load configuration from different file formats, transparently
 
 =head1 VERSION
 
-This document describes Config::Any version 0.09
+This document describes Config::Any version 0.09_01
 
 =head1 SYNOPSIS
 
@@ -133,16 +133,15 @@ sub _load {
     my ( $class, $args ) = @_;
     croak "_load requires a arrayref of file paths" unless $args->{ files };
 
-    if ( !defined $args->{ use_ext } ) {
+    my $force = defined $args->{ force_plugins };
+    if ( !$force and !defined $args->{ use_ext } ) {
         warn
             "use_ext argument was not explicitly set, as of 0.09, this is true by default";
         $args->{ use_ext } = 1;
     }
 
     # figure out what plugins we're using
-    my $force = defined $args->{ force_plugins };
-    my @plugins = grep { $_->is_supported }
-        ( $force ? @{ $args->{ force_plugins } } : $class->plugins );
+    my @plugins = $force ? @{ $args->{ force_plugins } } : $class->plugins;
 
     # map extensions if we have to
     my ( %extension_lut, $extension_re );
@@ -179,6 +178,7 @@ sub _load {
         }
 
         for my $loader ( @try_plugins ) {
+            next unless $loader->is_supported;
             my @configs
                 = eval { $loader->load( $filename, $loader_args{ $loader } ); };