Jeff Davis
list-mod_python at empires.org
Fri Sep 13 14:00:16 EST 2002
Thanks! For those who don't want to find those lines in the file, a patch is included below this message. I don't know what the impact of that is either. I hope it's good :) Regards, Jeff On Friday 13 September 2002 09:04 am, Bryan Mongeau wrote: > Hello, > > I have tested out the 3.0 BETA with apache 2 and discovered a segfault. > > $ gdb ./httpd > GNU gdb 5.2.1 > (gdb) run -X > Starting program: /usr/local/apache2/bin/httpd -X > > Program received signal SIGSEGV, Segmentation fault. > 0x400e8eef in apr_pstrcat (a=0x81d7fe8) at apr_strings.c:175 > 175 apr_size_t cplen = strlen(cp); > (gdb) bt > #0 0x400e8eef in apr_pstrcat (a=0x81d7fe8) at apr_strings.c:175 > #1 0x402ed68d in python_handler (req=0x81d8020, phase=0x40369247 > "PythonTransHandler") > at mod_python.c:764 > #2 0x402eea6d in PythonTransHandler (req=0x81d8020) at mod_python.c:1687 > #3 0x0808cd48 in ap_run_translate_name (r=0x81d8020) at request.c:108 > #4 0x0808d5ec in ap_process_request_internal (r=0x81d8020) at > request.c:167 #5 0x08069e02 in ap_process_request (r=0x81d8020) at > http_request.c:255 #6 0x08065dab in ap_process_http_connection > (c=0x81d40e0) at http_core.c:293 #7 0x080831c8 in > ap_run_process_connection (c=0x81d40e0) at connection.c:85 #8 0x0808346f > in ap_process_connection (c=0x81d40e0, csd=0x81d4010) at connection.c:207 > #9 0x08078cc2 in child_main (child_num_arg=0) at prefork.c:696 > #10 0x08078d80 in make_child (s=0x80b5378, slot=0) at prefork.c:736 > #11 0x08078e71 in startup_children (number_to_start=5) at prefork.c:808 > #12 0x0807917d in ap_mpm_run (_pconf=0x80b2cb0, plog=0x80ead90, > s=0x80b5378) at prefork.c:1024 > #13 0x0807e67c in main (argc=2, argv=0xbffff934) at main.c:645 > #14 0x401933c1 in __libc_start_main () from /lib/libc.so.6 > > > FIX: Comment out lines 764-767 and 770 of mod_python.c. Seems to compile > and run fine. Impact on functionality unknown. > --- mod_python.c.old 2002-09-13 13:51:09.000000000 -0700 +++ mod_python.c 2002-09-13 13:51:38.000000000 -0700 @@ -759,15 +759,7 @@ ext = apr_pstrcat(req->pool, ".", ext, NULL); } - /* is there an hlist entry, i.e. a handler? */ - /* try with extension */ - hle = (hl_entry *)apr_hash_get(conf->hlists, - apr_pstrcat(req->pool, phase, ext, NULL), - APR_HASH_KEY_STRING); - if (!hle) { - /* try without extension */ hle = (hl_entry *)apr_hash_get(conf->hlists, phase, APR_HASH_KEY_STRING); - } req_conf = (py_req_config *) ap_get_module_config(req->request_config, &python_module);
|