At 9:47 PM -0500 1/26/06, John E. Malmberg wrote:
>John E. Malmberg wrote:
>>I just got a reproduced crash with an instrumented vms.c.
>
>The access violation is occurring inside the stat() call in the CRTL. 
>According to the debugger, nothing is wrong with the arguments to function, 
>and I am referring this over to HP.

Thanks for pursuing this.  There is a very recent patch that fixes
some cases where Perl variables were not getting null terminated:

http://public.activestate.com/cgi-bin/perlbrowse?patch=26973

Dunno if that's related or not. 


>In the mean time, I think that the bug you found in vmsish.h should be fixed 
>for completeness.

I'll try to get in a patch for that one of these days.

>I am also thinking of changing the code that looks up the logical name 
>DECC_BUG_DEVNULL to default to 1 unless the logical name is present to turn it 
>off.

So that means doing the old behavior by default?

>In order to isolate this, I had to modify Perl_vms_sig_to_condition() to call 
>lib$signal(SS$_DEBUG) instead of it's normal action.
>
>This causes the VMS debugger to be entered on any exception.
>
>I think it would be a useful feature to have a logical name like 
>PERL_EXCEPTION_DEBUG be able to enable this when needed.

I like it.  One could get fancy and define the logical to a signal
number or condition value and trap only specific exceptions.

>
>I also want to convert the ino_t type copies and compares to be macros in 
>vmsish.t so that the references to _USE_STD_STAT can be removed from vmsish.t.

As far as I can tell, st_ino is never a pointer type.  The standard
says that it is of "extended integral type".  So it seems pretty safe
to me if we just always pass it by address.  On the other hand,
defining macros in vmsish.h so that we do comparisons and copies
consistently makes sense.
-- 
________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Reply via email to