Re: sudden features
[email protected] (Joshua N Pritikin)
| Newsgroups | perl.loop |
|---|---|
| Message-ID | <[email protected]> |
On Wed, Feb 09, 2000 at 10:00:21AM +0100, [email protected] wrote: > > I didn't have any problems with 5.5.3 either. Maybe you are getting > > hosed by threads. > > I don't think so. I checked the scripts on Linux where I run a non > threading perl (I attach the perl -V output). Different to Solaris, the > coredump script does NOT produce a coredump, but it is terminated > (reproducably) by a segmentation fault. (The other script runs as > expected.) I tried both 0.65 and 0.66 (hoping your bugfix could have > fixed this implicitly). I recompiled with Insure++ and found this (fix attached): [watcher.c:343] **RETURN_INCONSISTENT(4)** Function pe_watcher_on has an inconsistent return type. Returns value in one location, and not in another. >> if (WaPOLLING(wa) || WaSUSPEND(wa)) return; However, I couldn't find anything else. -- "Never ascribe to malice that which can be explained by stupidity." via, but not speaking for Deutsche Bank
fix
(text/plain, 790 B)
Change 2918 by joshua@joshua on 2000/02/09 09:04:31 fix Affected files ... .. //depot/D/Event/ChangeLog#132 edit .. //depot/D/Event/c/watcher.c#41 edit Differences ... ==== //depot/D/Event/ChangeLog#132 (text) ==== @@ -1,5 +1,7 @@ 2000-02-09 Joshua Pritikin <[email protected]> + * Fixed another bug introduced in 0.61. (Insure++) + * Tighten typemap. * Warn about non-existant methods. ==== //depot/D/Event/c/watcher.c#41 (text) ==== @@ -340,7 +340,8 @@ static char *pe_watcher_on(pe_watcher *wa, int repeat) { STRLEN n_a; char *excuse; - if (WaPOLLING(wa) || WaSUSPEND(wa)) return; + if (WaPOLLING(wa) || WaSUSPEND(wa)) + return 0; if (WaCANCELLED(wa)) croak("Event: attempt to start cancelled watcher '%s'", SvPV(wa->desc,n_a));