[R] tcltk crashes with bad color with text widget

Duncan Murdoch murdoch at stats.uwo.ca
Tue Oct 17 14:11:49 CEST 2006


On 10/16/2006 10:47 PM, Alex Couture-Beil wrote:
> Hello
> 
> I have been playing with tcl/tk in R 2.4.0 on windows XP and have 
> managed to crash R by supplying tcl/tk with an incorrect color.
> Is this a bug? is there a way for me to test the color to see if it is a 
> valid tcl/tk color, to avoid this?
> 
> tt=tktoplevel()
> tklabel(parent=tt, text="hello world", foreground="reed")
> Error in structure(.External("dotTclObjv", objv, PACKAGE = "tcltk"), 
> class = "tclObj") :
>         [tcl] unknown color name "reed".
> An error is displayed as one would expect, however when I try
> tktext(parent=tt, foreground="blaaack")
> R crashes, rather than displaying an error as tklabel did.
> 
> This, however, does not happen on my FreeBSD machine, which displays an 
> error similar to the one for tklabel and does not crash.

I see the same crash in Windows, occurring deep in one of the TCL 
routines, where it tries to work with a font, but the font has not been 
assigned.

TK on Windows uses a different display driver than FreeBSD does, so this 
could be a TK bug, rather than an R bug, and it does look like that. 
Alternatively, we might be ignoring an error generated in TK, in which 
case it is our bug:  but the tklabel example makes that sound wrong.

To verify, it would be nice to try the same commands in wish (or some 
other TCL/TK platform).  Do you know the pure TCL equivalent?

Duncan Murdoch



More information about the R-help mailing list