William A. Rowe, Jr. wrote:
> At 10:15 AM 12/7/2004, Stas Bekman wrote:
>
>>apr_brigade_cleanup looks wrong:
>>
>>APU_DECLARE(apr_status_t) apr_brigade_cleanup(void *data)
>>{
>> apr_bucket_brigade *b = data;
>> apr_bucket *e;
>>
>>shouldn't it be:
>>
>> apr_bucket_brigade *b = (apr_bucket_brigade *)data;
>>
>>why does it have (void *data) argument? why is this inconsistent with:
>>
>> APU_DECLARE(apr_status_t) apr_brigade_destroy(apr_bucket_brigade *b);
>>
>>it seems to work fine on linux but on windows causes all kind of crashes.
>
>
> It shouldn't - all ANSI C compilers should promote any void* type
> to an appropriate foo* type silently and without any negative
> consequences.
>
> Is it possible you created a mis-aligned apr_bucket_brigade (not
> on an appropriate word boundry?) What module is crashing? Is
> this perl? C? C++?
Bill, as I said earlier I can't answer on any of these, since I'm not
running on win32.
But I want to report that we fixed the wrapper to use apr_bucket_brigade*
instead of void*, and win32 can't be happier than that.
--
__________________________________________________________________
Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org http://ticketmaster.com
|