Need to use a lower level method in getting attribute value, because of things like...
Shawn M Moore [Sun, 13 Jan 2008 00:40:39 +0000 (00:40 +0000)]
lib/Class/MOP/Class.pm

index c8a9dda..f22b07e 100644 (file)
@@ -418,7 +418,7 @@ sub rebless_instance {
     $meta_instance->rebless_instance_structure($instance, $new_metaclass);
 
     # check and upgrade all attributes
-    my %params = map { $_->name => $_->get_value($instance) }
+    my %params = map { $_->name => $meta_instance->get_slot_value($instance, $_->name) }
                  grep { $meta_instance->is_slot_initialized($instance, $_->name) }
                  $new_metaclass->compute_all_applicable_attributes;