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:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
