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
>