--- loncom/interface/lonnavmaps.pm 2008/01/20 01:52:47 1.410 +++ loncom/interface/lonnavmaps.pm 2008/01/24 22:12:02 1.411 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.410 2008/01/20 01:52:47 raeburn Exp $ +# $Id: lonnavmaps.pm,v 1.411 2008/01/24 22:12:02 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2299,17 +2299,22 @@ sub parmval { my $hashkey = $what."|||".$symb; if (defined($self->{PARM_CACHE}->{$hashkey})) { - if (wantarray) { - return @{$self->{PARM_CACHE}->{$hashkey}}; - } else { - return $self->{PARM_CACHE}->{$hashkey}->[0]; - } + if (ref($self->{PARM_CACHE}->{$hashkey}) eq 'ARRAY') { + if (defined($self->{PARM_CACHE}->{$hashkey}->[0])) { + if (wantarray) { + return @{$self->{PARM_CACHE}->{$hashkey}}; + } else { + return $self->{PARM_CACHE}->{$hashkey}->[0]; + } + } + } else { + return $self->{PARM_CACHE}->{$hashkey}; + } } - my $result = $self->parmval_real($what, $symb, $recurse); $self->{PARM_CACHE}->{$hashkey} = $result; if (wantarray) { - return @{$result}; + return @{$result}; } return $result->[0]; }