[Rd] Graphic parameters with length zero in grid cause R to crash

Gu, Zuguang z@gu @end|ng |rom dk|z-he|de|berg@de
Tue May 19 11:26:42 CEST 2020


Hi,


I found in grid package, if the graphic parameters have zero length, R crashes. In the

following code, I only tested `grid.rect()` and the `fill` parameter, but I think it should

be similar as other grid graphic functions.


In `gpar()` function, the graphic parameters are not allowed to have zero length, but
we can make them with zero length by first generating a `gpar` object and then subsetting
with zero length index, such as follows:

```
> library(grid)
> gp = gpar(fill = 1)
> grid.rect(gp = gp[integer(0)])
```

After Executing the code, R crashes with message "Floating point exception: 8?".

If I set the value of `fill` to an integer, the following code causes an error with a
not informative error message.

> library(grid)
> gp = gpar(fill = as.integer(1))
> grid.rect(gp = gp[integer(0)])
Error in grid.Call.graphics(C_rect, x$x, x$y, x$width, x$height, resolveHJust(x$just,  :
  numerical color values must be >= 0, found -192882464

But sometimes it also causes R to crash.


My session info:


```

> sessionInfo()
R version 4.0.0 (2020-04-24)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.4

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRblas.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib

locale:
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] colorout_1.2-2

loaded via a namespace (and not attached):
[1] compiler_4.0.0?
```


Best regards,
Zuguang Gu?


	[[alternative HTML version deleted]]



More information about the R-devel mailing list