On Sunday, April 28, 2002, at 07:12 AM, Puneet Kishor wrote: > I am developing a web application, and have started encountering a new > error (taken from the error_log)... > > [Sun Apr 28 08:50:40 2002] [error] (22)Invalid argument: getsockname > [Sun Apr 28 08:50:40 2002] [notice] child pid 493 exit signal Bus error > (10) > [Sun Apr 28 08:50:40 2002] [notice] child pid 482 exit signal Bus error > (10) > > > If I run the script from the command line I get the same, cryptic "Bus > error" on the terminal. A little bit of research reveals that the error > is probably because Perl tried to clear a memory pointer that doesn't > exist any more. When I delve into the module I am using for my scripts, > that indeed seems to be the case... the croaking seems to happen when > the module tries to destroy an existing hash... specifically at... > > sub DESTROY { > my $self = tied(%{$_[0]}); > delete $ITERATORS{$self}; > if (exists $OWNER{$self}) { > mapscriptc::delete_mapObj($self); > delete $OWNER{$self}; > } > } > > In any case, here are my questions -- > > 1. am I right about my assumption about failure to clear a memory > pointer? > 2. that the above error is new to me means that this is a problem > specific to the module I am using, and not some new gremlin I have > exposed in my iBook or the "Perl on MacOS X" implementation?
I've seen the bus error problem a lot myself, and after trying to workaround the problem, occurring even in standard packages, I concluded that it is a real bug in Perl 5.6.0, the default version that comes with Mac OS X. Upgrading to 5.6.1 solved the bus error problems for me. -------------------------------------------------------------------------- Edward Moy Apple Computer, Inc. [EMAIL PROTECTED] (This message is from me as a reader of this list, and not a statement from Apple.)