fixed clone bug
Luke Saunders [Fri, 1 Aug 2008 11:29:34 +0000 (11:29 +0000)]
Changes
lib/DBIx/Class/Schema.pm

diff --git a/Changes b/Changes
index f08a7f3..05e2fad 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,8 @@
 Revision history for DBIx::Class
 
 0.08099_04 2008-07-24 01:00:00
+        - Fixed $schema->clone bug which caused clone and source to share 
+          internal hash refs
         - Added register_extra_source methods for additional sources
         - Added datetime_undef_if_invalid for InflateColumn::DateTime to
           return undef on invalid date/time values
index ee13a1d..ae4f977 100644 (file)
@@ -910,6 +910,8 @@ sub clone {
   my $clone = { (ref $self ? %$self : ()) };
   bless $clone, (ref $self || $self);
 
+  $clone->class_mappings({ %{$clone->class_mappings} });
+  $clone->source_registrations({ %{$clone->source_registrations} });
   foreach my $moniker ($self->sources) {
     my $source = $self->source($moniker);
     my $new = $source->new($source);