Hi,
Linux 2.2.14, Apache 1.3.12, Perl 5.6.0, mod_perl 1.24.
On the first request, I get a segfault after perl_handler_ismethod
is called.
#0 0x40280fdc in mod_perl_register_cleanup (r=0x92ba3fc, sv=0x1) at mod_perl.c:1242
#1 0x40280fb0 in perl_handler_ismethod (pclass=0x92ba3fc, sub=0x1 <Address 0x1 out of
bounds>) at mod_perl.c:1236
#2 0x80549b4 in run_method (r=0x92ba3fc, offset=45, run_all=1) at http_config.c:360
#3 0x8054ab8 in ap_header_parse (r=0x92ba3fc) at http_config.c:397
#4 0x8068719 in process_request_internal (r=0x92ba3fc) at http_request.c:1149
#5 0x8068acc in ap_process_request (r=0x92ba3fc) at http_request.c:1231
#6 0x8060319 in child_main (child_num_arg=0) at http_main.c:4363
#7 0x80604d0 in make_child (s=0x80a9524, slot=0, now=962012784) at http_main.c:4476
#8 0x8060629 in startup_children (number_to_start=10) at http_main.c:4558
#9 0x8060c56 in standalone_main (argc=2, argv=0xbffffb64) at http_main.c:4846
#10 0x80613f3 in main (argc=2, argv=0xbffffb64) at http_main.c:5188
Looking at the code (http_config.c) :-
#2 0x80549b4 in run_method (r=0x92ba3fc, offset=45, run_all=1) at http_config.c:360
360 result = (*mod_handler) (r);
There is no second argument, so I'm guessing that the test in
mod_perl.c :-
1216 if(!sub) return 0;
is supposed to be checking for an optional argument. Anyway, because
run_all is set in the call to run_method, it's getting a one not a
zero.
I did try modifying the code to test explicitly for 1, but that didn't
fix it, and it didn't seem like a very good fix to me.
Any ideas?
Thanks,
Rich Williams
[EMAIL PROTECTED]