Bus error -- Re: [mapserver-users] Re: Perl/mapscript error

Lowell Filak lfilak at medinaco.org
Fri May 3 14:23:48 EDT 2002


I think that an error in "eval( $perl )" results in an error in the perl script whereas an error in "eval( "$perl" )" results in an error in the eval and should not bomb the script while "eval( $perl )" could bomb the script but shouldn't in the case of "Not a HASH..." because it's just a warning. More ellaboration on that may need to go to a perl list.
The source of all of this (which you've already identified) is something that may need cleared up as Puneet suggests, if it's creating that much of a problem.
Lowell F.

The following message was sent by Giorgio Volpe <giorgio at nauta.it> on Thu, 02 May 2002 15:36:01 +0200.

> I've discovered, after many hours, that the problem is related, in my
> case, to the fact that the sub raising the error on its return (clean
> up) is called in an "eval" and the result of the call is than stored as
> returned from eval ...
> 
> 	@res=eval( $perl )
> after this, $@ contains "Not a HASH reference at
> /usr/local/lib/perl/5.6.1/mapscript.pm ..."
> 
> if I change it to:
> 
> 	@res=eval( "my \@r=$perl;return \@r" )
> 
> error disappears!
> Is it a scope related problem? A little perl confusion?
> 
> (if this can be of any neaning for someone, $perl contains a complex
> reference to an object that is in an other package ... like
> $me->{binded_obj}->method_causing_error()  )
> 
> 
> 
> -- 
> 
>     Giorgio
> 
> -----------------------------------------




More information about the mapserver-users mailing list