temporary fix for RT bug # 20879 (real fix + testcases later)
[gitmo/Algorithm-C3.git] / lib / Algorithm / C3.pm
index 8e49370..a18828a 100644 (file)
@@ -6,7 +6,7 @@ use warnings;
 
 use Carp 'confess';
 
-our $VERSION = '0.01';
+our $VERSION = '0.02';
 
 sub merge {
     my ($root, $parent_fetcher) = @_;
@@ -55,7 +55,9 @@ sub merge {
             # http://www.python.org/2.3/mro.html :)
 
             # Initial set
-            my @seqs = ([$current_root], @$recurse_mergeout, $current_parents);
+            my @deepcopy_recurse_mergeout;
+            push(@deepcopy_recurse_mergeout, [@$_]) for (@$recurse_mergeout);
+            my @seqs = ([$current_root], @deepcopy_recurse_mergeout, [@$current_parents]);
 
             # Construct the tail-checking hash
             my %tails;
@@ -275,10 +277,12 @@ is the B<Devel::Cover> report on this module's test suite.
 
 =back 
 
-=head1 AUTHOR
+=head1 AUTHORS
 
 Stevan Little, E<lt>stevan@iinteractive.comE<gt>
 
+Brandon L. Black, E<lt>blblack@gmail.comE<gt>
+
 =head1 COPYRIGHT AND LICENSE
 
 Copyright 2006 by Infinity Interactive, Inc.