diff options
author | Gianni Ceccarelli <dakkar@thenautilus.net> | 2011-11-14 15:06:47 +0000 |
---|---|---|
committer | Gianni Ceccarelli <dakkar@thenautilus.net> | 2011-11-14 17:00:15 +0000 |
commit | d47a5d9018fe9b8c30a400a9ff9f747bdcf4bffb (patch) | |
tree | 45667438f07833f7ec7c72f5092d71c0b4d30ef1 /lib | |
parent | fix inserting range w/o overlap (diff) | |
download | data-multivalued-d47a5d9018fe9b8c30a400a9ff9f747bdcf4bffb.tar.gz data-multivalued-d47a5d9018fe9b8c30a400a9ff9f747bdcf4bffb.tar.bz2 data-multivalued-d47a5d9018fe9b8c30a400a9ff9f747bdcf4bffb.zip |
fix tags&ranges ser bug (w/ test)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Data/MultiValued/TagContainerForRanges.pm | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/Data/MultiValued/TagContainerForRanges.pm b/lib/Data/MultiValued/TagContainerForRanges.pm index d3cd4b9..604dcb7 100644 --- a/lib/Data/MultiValued/TagContainerForRanges.pm +++ b/lib/Data/MultiValued/TagContainerForRanges.pm @@ -20,14 +20,19 @@ sub _create_new_inferior { sub _rebless_storage { my ($self) = @_; - bless $self->{_storage},'Data::MultiValued::RangeContainer'; + bless $_,'Data::MultiValued::RangeContainer' + for values %{$self->{_storage}}; bless $self->{_default_tag},'Data::MultiValued::RangeContainer'; return; } sub _as_hash { my ($self) = @_; - my %st = %{$self->_storage}; + my %st; + for my $k (keys %{$self->_storage}) { + my %v = %{$self->_storage->{$k}}; + $st{$k}=\%v; + } my %dt = %{$self->_default_tag}; return { _storage => \%st, |