don't load_class if a metaclass already exists
[gitmo/Moose.git] / lib / Moose / Util.pm
index fb2a409..130a982 100644 (file)
@@ -137,7 +137,10 @@ sub _apply_all_roles {
 
     return unless @role_metas;
 
-    Class::MOP::load_class($applicant) unless blessed($applicant);
+    Class::MOP::load_class($applicant)
+        unless blessed($applicant)
+            || Class::MOP::class_of($applicant);
+
     my $meta = ( blessed $applicant ? $applicant : Moose::Meta::Class->initialize($applicant) );
 
     if ( scalar @role_metas == 1 ) {