[R] tcltk crashes with bad color with text widget
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Tue Oct 17 14:36:15 CEST 2006
Duncan Murdoch <murdoch at stats.uwo.ca> writes:
> 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?
Should be close to this
toplevel .1
label .1.1 -text "hello world" -foreground reed
text .1.2 -foreground blaack
(and it doesn't crash on my machine, in R or wish)
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list