You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Sebastian Bergmann <li...@sebastian-bergmann.de> on 2002/04/09 07:54:14 UTC

Re: [PHP-DEV] Crash in Apache2Filter

Sebastian Bergmann wrote:
>   Win32, Apache 2.0.36-dev, PHP 4.3.0-dev (both current CVS)

  The crash seems to be gone now.

  However, the following compiler warnings remain:

c:\Apache2\include\apr.h(334): warning C4142:
benign redefinition of type

c:\home\php\php4\sapi\apache2filter\sapi_apache2.c(121): warning C4018:
'<': signed/unsigned mismatch

c:\Apache2\include\apr.h(334): warning C4142:
benign redefinition of type

c:\home\php\php4\sapi\apache2filter\php_functions.c(91): warning C4244:
'function': conversion from 'apr_time_t' to 'long',
possible loss of data

c:\home\php\php4\sapi\apache2filter\php_functions.c(92): warning C4244:
'function': conversion from 'apr_off_t' to 'long',
possible loss of data

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/                 http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/

Re: [PHP-DEV] Crash in Apache2Filter

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
At 01:32 AM 4/9/2002, Cliff Woolley wrote:
>On Tue, 9 Apr 2002, Sebastian Bergmann wrote:
>
> > >>   Win32, Apache 2.0.36-dev, PHP 4.3.0-dev (both current CVS)
> > >
> > >  The crash seems to be gone now.
> >
> >   This is odd. Compiled with MSVS.Net it does not crash, compiled with
> >   MSVC 6 it does.
>
>As a gut instinct, I'd trust VC6 over VS.Net here, frankly.  Can you step
>through the brigade in question and tell me what buckets are in it?  Make
>sure the brigade's "link" ring is intact all the way around in both
>directions, also.  For each bucket in the brigade, what type is it
>(e->type) and how long is it (e->length), for starters?  We have nice
>little macros to dump this stuff out for us on gdb, but unfortunately no
>such beast currently exists (is possible? I don't know) on MSVC's
>debugger.

I'd agree with Cliff here - but one other caviat.  I've seen -very- weird 
results
when msvcrt versions (release v.s. debug, 5.0 vs. 6.0 etc) don't match between
compile and link.  Have spent many an hour chasing 'ghosts in the machine'.

If you are flipping between compilers - be sure to stay safely in different 
trees :)




Re: [PHP-DEV] Crash in Apache2Filter

Posted by Cliff Woolley <jw...@apache.org>.
PS: If your line numbers match up with mine, line 562 of util_filter.c
(the one that your backtrace seems to indicate is crashing) is this:

   APR_BRIGADE_CONCAT(*saveto, *b);

> Make sure the brigade's "link" ring is intact all the way around in both
> directions, also.

So this part of what I asked you to take a look at becomes especially
important in this case... APR_BRIGADE_CONCAT is a constant-time operation
that works directly off the ->next and ->prev pointers of the two
brigades' sentinels.  It doesn't have to walk the list at all.  So verify
that both brigades are intact... one of them must not be.  :)

At that point, figuring out where the corruption occurs is where knowing
what the contents of the brigades are becomes useful.

--Cliff

--------------------------------------------------------------
   Cliff Woolley
   cliffwoolley@yahoo.com
   Charlottesville, VA



Re: [PHP-DEV] Crash in Apache2Filter

Posted by Cliff Woolley <jw...@apache.org>.
On Tue, 9 Apr 2002, Sebastian Bergmann wrote:

> >>   Win32, Apache 2.0.36-dev, PHP 4.3.0-dev (both current CVS)
> >
> >  The crash seems to be gone now.
>
>   This is odd. Compiled with MSVS.Net it does not crash, compiled with
>   MSVC 6 it does.

As a gut instinct, I'd trust VC6 over VS.Net here, frankly.  Can you step
through the brigade in question and tell me what buckets are in it?  Make
sure the brigade's "link" ring is intact all the way around in both
directions, also.  For each bucket in the brigade, what type is it
(e->type) and how long is it (e->length), for starters?  We have nice
little macros to dump this stuff out for us on gdb, but unfortunately no
such beast currently exists (is possible? I don't know) on MSVC's
debugger.

Thanks,
Cliff


--------------------------------------------------------------
   Cliff Woolley
   cliffwoolley@yahoo.com
   Charlottesville, VA



Re: [PHP-DEV] Crash in Apache2Filter

Posted by Sebastian Bergmann <li...@sebastian-bergmann.de>.
Sebastian Bergmann wrote:
> Sebastian Bergmann wrote:
>>   Win32, Apache 2.0.36-dev, PHP 4.3.0-dev (both current CVS)
>
>  The crash seems to be gone now.

  This is odd. Compiled with MSVS.Net it does not crash, compiled with
  MSVC 6 it does.

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/                 http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/