Or another way that works for me is to change:
push @pages, { name => $name, page => $value };
}
$function->{pages} = \@pages;
delete $function->{page};
}
to
while (my ($name, $value) = each %{$function->{page}}) {
push @pages, { name => $name, page => $value };
}
$function->{pages} = \@pages;
delete $function->{page};
}
Edit: Whoops thats the same way Alex did it so it should work - are you sure you pasted it right?
Code:
while (my ($name, $value) = each %{$function->{page}}) { push @pages, { name => $name, page => $value };
}
$function->{pages} = \@pages;
delete $function->{page};
}
to
Code:
if (ref $function->{page} eq 'HASH') { while (my ($name, $value) = each %{$function->{page}}) {
push @pages, { name => $name, page => $value };
}
$function->{pages} = \@pages;
delete $function->{page};
}
Edit: Whoops thats the same way Alex did it so it should work - are you sure you pasted it right?