Hi
Felix Andrews wrote: > Dr Murrell and others, > > It seems grid.ls() fails after any use of grid.remove(). It gives an > infinite recursion error even in the simplest cases, and no matter > what arguments are passed to grid.ls. Yep, blatant error in the code. I will have a fix in the development version soon. Thanks for the report! Paul >> library(grid) >> grid.newpage() >> grid.lines(name="foo") >> grid.ls() > foo >> grid.remove("foo") >> grid.ls() > Error: evaluation nested too deeply: infinite recursion / > options(expressions=)? >> grid.ls(recursive=FALSE) > Error: evaluation nested too deeply: infinite recursion / > options(expressions=)? >> str(grid.ls(print=FALSE)) > Error: evaluation nested too deeply: infinite recursion / > options(expressions=)? >> traceback() > ...etc... > ...etc... > ...etc... > 13: gridList.default(X[[2L]], ...) > 12: FUN(X[[2L]], ...) > 11: lapply(display.list[1:dl.index], gridList, grobs = grobs, > viewports = viewports, > fullNames = fullNames, recursive = recursive) > 10: gridList.default(X[[2L]], ...) > 9: FUN(X[[2L]], ...) > 8: lapply(display.list[1:dl.index], gridList, grobs = grobs, viewports > = viewports, > fullNames = fullNames, recursive = recursive) > 7: gridList.default(X[[2L]], ...) > 6: FUN(X[[2L]], ...) > 5: lapply(display.list[1:dl.index], gridList, grobs = grobs, viewports > = viewports, > fullNames = fullNames, recursive = recursive) > 4: gridList.default(x, grobs = grobs, viewports = viewports, fullNames > = fullNames, > recursive = recursive) > 3: gridList(x, grobs = grobs, viewports = viewports, fullNames = fullNames, > recursive = recursive) > 2: grid.ls(print = FALSE) > 1: str(grid.ls(print = FALSE)) > > >> str(current.vpTree()) > List of 17 > $ x :Class 'unit' atomic [1:1] 0.5 > .. ..- attr(*, "unit")= chr "npc" > .. ..- attr(*, "valid.unit")= int 0 > $ y :Class 'unit' atomic [1:1] 0.5 > .. ..- attr(*, "unit")= chr "npc" > .. ..- attr(*, "valid.unit")= int 0 > $ width :Class 'unit' atomic [1:1] 1 > .. ..- attr(*, "unit")= chr "npc" > .. ..- attr(*, "valid.unit")= int 0 > $ height :Class 'unit' atomic [1:1] 1 > .. ..- attr(*, "unit")= chr "npc" > .. ..- attr(*, "valid.unit")= int 0 > $ justification : chr "centre" > $ gp : list() > ..- attr(*, "class")= chr "gpar" > $ clip : logi TRUE > $ xscale : num [1:2] 0 558 > $ yscale : num [1:2] 557 0 > $ angle : num 0 > $ layout : NULL > $ layout.pos.row: NULL > $ layout.pos.col: NULL > $ valid.just : num [1:2] 0.5 0.5 > $ valid.pos.row : NULL > $ valid.pos.col : NULL > $ name : chr "ROOT" > - attr(*, "class")= chr "viewport" > > >> sessionInfo() > R version 2.8.0 Under development (unstable) (2008-07-26 r46127) > i386-pc-mingw32 > > locale: > LC_COLLATE=English_Australia.1252;LC_CTYPE=English_Australia.1252;LC_MONETARY=English_Australia.1252;LC_NUMERIC=C;LC_TIME=English_Australia.1252 > > attached base packages: > [1] grid stats graphics grDevices utils datasets methods > [8] base > > -- Dr Paul Murrell Department of Statistics The University of Auckland Private Bag 92019 Auckland New Zealand 64 9 3737599 x85392 [EMAIL PROTECTED] http://www.stat.auckland.ac.nz/~paul/ ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel