Tietew です。

ruby/1.8.3 CVS snapshot で ruby_setenv() が core 吐くので報告です。
再現性はある(同じ状況で必ず core dump しはする)のですが再現条
件はつかめていません。

該当行では
  ENV['REQUEST_METHOD'] = 'GET'
を行っています。

* Linux 2.4.27
* Ruby 1.8.3 (2005-05-17)
* Apache/1.3.31 PHP/4.3.7 mod_ruby/1.2.4 Ruby/1.8.3 (2005-05-17)


# gdb /usr/local/apache/bin/httpd /tmp/core
 (snip)
#0  0x402134de in ruby_setenv (name=0x8279230 "REQUEST_METHOD",
    value=0x8279490 "GET") at hash.c:1858
1858            if (environ[i] != origenviron[i])
(gdb) bt
#0  0x402134de in ruby_setenv (name=0x8279230 "REQUEST_METHOD",
    value=0x8279490 "GET") at hash.c:1858
#1  0x4021366e in env_aset (obj=1078256064, nm=1084399360, val=1084399340)
    at hash.c:1908
#2  0x401fd459 in rb_call0 (klass=1078256044, recv=1078256064, id=332,
    oid=332, argc=2, argv=0xbfff69d4, body=0x4044e134, nosuper=0)
    at eval.c:5483
#3  0x401fdf40 in rb_call (klass=1078256044, recv=1078256064, mid=332, argc=2,
    argv=0xbfff69d4, scope=0) at eval.c:5832
#4  0x401f7d72 in rb_eval (self=1084400340, n=0x4052d23c) at eval.c:3299
 (snip)
#28 0x401bd447 in ruby_handler_internal (iarg=0x8337dc4) at mod_ruby.c:1178
#29 0x401bd53a in ruby_handler (r=0x82bf5dc, handlers_arr=0x80de44c,
    mid=12801, run_all=0, flush=1) at mod_ruby.c:1228
#30 0x401bd5a5 in ruby_object_handler (r=0x82bf5dc) at mod_ruby.c:1246
#31 0x080746e9 in ap_invoke_handler ()
#32 0x0808b34c in process_request_internal ()
#33 0x0808b7ec in ap_internal_redirect ()
#34 0x401c4142 in request_internal_redirect (self=1084556400, uri=1084461840)
    at request.c:1333
#35 0x401fd443 in rb_call0 (klass=1078219764, recv=1084556400, id=11953,
    oid=11953, argc=1, argv=0xbfff9d24, body=0x40444648, nosuper=0)
    at eval.c:5480
 (snip)
#75 0x401bd447 in ruby_handler_internal (iarg=0x821891c) at mod_ruby.c:1178
#76 0x401bd53a in ruby_handler (r=0x82105ac, handlers_arr=0x80de44c,
    mid=12801, run_all=0, flush=1) at mod_ruby.c:1228
#77 0x401bd5a5 in ruby_object_handler (r=0x82105ac) at mod_ruby.c:1246
#78 0x080746e9 in ap_invoke_handler ()
#79 0x0808b34c in process_request_internal ()
#80 0x0808b3b6 in ap_process_request ()
#81 0x080819f0 in child_main ()
#82 0x08081c9a in make_child ()
#83 0x08082028 in perform_idle_server_maintenance ()
#84 0x0808268c in standalone_main ()
#85 0x08082cfc in main ()
#86 0x400b214f in __libc_start_main () from /lib/libc.so.6
(gdb) p origenviron
$2 = (char **) 0xbffffedc
(gdb) p (char**)environ
$3 = (char **) 0x831df38
(gdb) p ((char**)environ)[i]
$4 = 0x82948d8 "REQUEST_METHOD=POST"
(gdb) p origenviron[i]
Cannot access memory at address 0xc0000054
(gdb) p i
$14 = 94
(gdb) p origenviron[0]
$15 = 0xbfffff9c "PWD=(hidden)"
(gdb) p origenviron[1]
$16 = 0xbfffffba "SHLVL=2"
(gdb) p origenviron[2]
$17 = 0xbfffffc2 "_=/usr/local/apache/bin/httpd"
(gdb) p origenviron[3]
$18 = 0x0
(gdb) p origenviron[4]
$19 = 0x10 <Address 0x10 out of bounds>
(gdb) p ((char**)environ)[0]
$20 = 0x82ece58 "CONTENT_LENGTH=61"
(gdb) p ((char**)environ)[99]
$42 = 0x82ea648 "GATEWAY_INTERFACE=CGI-Ruby/1.1"
(gdb) p ((char**)environ)[100]
$43 = 0x0
(gdb) p ((char**)environ)[101]
$44 = 0x31 <Address 0x31 out of bounds>
(gdb) p name
$45 = 0x8279230 "REQUEST_METHOD"
(gdb) p value
$46 = 0x8279490 "GET"


―[ Tietew ]――――――――――――――――――――――――――
 メ : tietew / tietew.net / tietew / raug.net / tietew / masuclub.net
ホペ: http://www.tietew.net/     Tietew Windows Lab.
      http://www.masuclub.net/   鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153  81C4 773C 963A D51B 8CAA