I unfortunately am having a far more difficult time replicating this on
my home computer.
> sessionInfo()
R version 2.7.0 (2008-04-22)
i486-pc-linux-gnu
locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
I ran the same code loop as below after loading the tcltk package, and
resized the resulting window dozens of times before seeing the error
message only once. It would often not happen at all. At work, I will
see the message basically every time I resize the window.
Here are the main differences I can think of off the top of my head:
1) RHEL version 4 at work, Unbuntu (8.04) at home
2) Compile my own version of R at work from source, use the Ubuntu R
packages at home, http://cran.r-project.org/bin/linux/ubuntu/
3) Cairo support not enabled at work, it is enabled at home.
If anyone else can replicate this, that would be great. Otherwise, I am
going to try a few more tests tomorrow at work, and will reply with the
results.
Best,
Erik Iverson
Erik Iverson wrote:
Dear R-devel / Dr. Murrell -
This is similar but ultimately unrelated (I think) to something I posted
about in February. See my original post here:
https://stat.ethz.ch/pipermail/r-devel/2008-February/048278.html
I start R with the --vanilla option, and run the following code.
## BEGIN SAMPLE R CODE
library(grid)
for(i in seq(0, 1, by = .1)) {
for(j in seq(0, 1, by = .1)) {
angle <- runif(1, 1, 180)
col <- sample(colors(), 1)
pushViewport(viewport(x = i, y= j, width = .1, height = .1,
angle = angle, gp = gpar(col = col)))
grid.rect()
popViewport()
}
}
## END SAMPLE R CODE
I can then resize the resulting R Graphics Device window and everything
seems to work fine.
If I then do issue 'library(tcltk)', and reissue the above code, and
then resize the resulting window to something fairly small, I get the
following error that shows up at my R prompt:
Error: Cannot pop the top-level viewport (grid and graphics output mixed?)
The error seems harmless, but eventually, after doing this "enough", and
closing the graphics window, R may segfault,
*** caught segfault ***
address 0xfc, cause 'memory not mapped'
Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
I have tracked down the error message I am receiving with some very
rudimentary techniques, and narrowed it down to the L_unsetviewport
function defined in grid.c. The error string in question appears two
places in that function, and I determined in my case that it is the
first instance that is actually outputting the error. That's about as
far as I can take it unfortunately.
Again, this only seems to happen after I load the tcltk package.
I am running RHEL version 4 with KDE on a 32-bit Intel processor.
Here is my session info, immediately after starting R...
sessionInfo()
R version 2.7.0 (2008-04-22)
i686-pc-linux-gnu
locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
Thanks,
Erik Iverson
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel