Ok... I'll look into incorporating one of these solutions. Thanks, Curt Hidetoshi NAGAI wrote: > > I should say sorry about a bug on Ruby/Tk. > I found a SEGV bug when tcltklib.so is compiled with Tcl/Tk8.3.x. > I couldn't find the bug, because I usually use Tcl/Tk8.4.x or 8.5a1. > If you can re-package, please use Tcl/Tk8.4+ or adopt the following > patch to ext/tcltklib/tcltklib.c. > > --- tcltklib.c.preview3 2004-11-10 03:50:01.000000000 +0900 > +++ tcltklib.c 2004-11-10 03:23:15.000000000 +0900 > @@ -3306,9 +3306,12 @@ > > Tcl_Preserve(slave); > > +#if TCL_MAJOR_VERSION < 8 || ( TCL_MAJOR_VERSION == 8 && > TCL_MINOR_VERSION < 4) > +#else > if (!Tcl_InterpDeleted(slave)) { > Tcl_Eval(slave, "foreach i [after info] { after > cancel $i }"); > } > +#endif > > /* delete slaves of slave */ > delete_slaves(slave); > @@ -3356,9 +3359,12 @@ > Tcl_Eval(ptr->ip, finalize_hook_name); > } > > +#if TCL_MAJOR_VERSION < 8 || ( TCL_MAJOR_VERSION == 8 && > TCL_MINOR_VERSION < 4) > +#else > if (!Tcl_InterpDeleted(ptr->ip)) { > Tcl_Eval(ptr->ip, "foreach i [after info] {after > cancel $i}"); > } > +#endif > > del_root(ptr->ip); > > @@ -3820,9 +3826,12 @@ > /* Tcl_Preserve(ptr->ip); */ > rbtk_preserve_ip(ptr); > > +#if TCL_MAJOR_VERSION < 8 || ( TCL_MAJOR_VERSION == 8 && > TCL_MINOR_VERSION < 4) > +#else > if (!Tcl_InterpDeleted(ptr->ip)) { > Tcl_Eval(ptr->ip, "foreach i [after info] { after cancel $i }"); > } > +#endif > > del_root(ptr->ip); > > > -- > Hidetoshi NAGAI (nagai / ai.kyutech.ac.jp) > > --- > Incoming mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.788 / Virus Database: 533 - Release Date: 11/1/2004 >