skip to Main Content

I’m running R code in a .qmd file using VS Code and plot results using r.plot.useHttpgd. In various cases I get an *** caught segfault *** error.

Reproducible example

library(spatstat)

plot(amacrine) # This works fine
plot(unmark(amacrine)) # It crashes here

I get the following error message:

 *** caught segfault ***
address 0x0, cause 'invalid permissions'

Traceback:
 1: dev.capabilities()
 2: default.symap.points(unmark(x), ..., chars = chars, cols = cols)
 3: plot.ppp(unmark(amacrine))
 4: plot(unmark(amacrine))

Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace

When I run it without httpgd (i. e. a .png output) the code runs fine. It also works when I use RStudio.

Could it be a problem with VSCode?


> sessionInfo()
R version 4.2.2 (2022-10-31)
Platform: aarch64-apple-darwin20 (64-bit)
Running under: macOS Monterey 12.6.1

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.2-arm64/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.2-arm64/Resources/lib/libRlapack.dylib

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

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

other attached packages:
[1] spatstat_3.0-6         spatstat.linnet_3.1-1  spatstat.model_3.2-4  
[4] rpart_4.1.19           spatstat.explore_3.2-1 nlme_3.1-160          
[7] spatstat.random_3.1-5  spatstat.geom_3.2-1    spatstat.data_3.0-1   

loaded via a namespace (and not attached):
 [1] lattice_0.20-45       deldir_1.0-9          grid_4.2.2           
 [4] jsonlite_1.8.7        tensor_1.5            rlang_1.1.1          
 [7] cli_3.6.1             goftest_1.2-3         Matrix_1.5-4.1       
[10] spatstat.utils_3.0-3  splines_4.2.2         polyclip_1.10-4      
[13] abind_1.4-5           compiler_4.2.2        spatstat.sparse_3.0-2
[16] mgcv_1.8-41   

2

Answers


  1. Chosen as BEST ANSWER

    The issue is fixed in the development version of httpgd which can be installed via remotes::install_github("nx10/httpgd").

    GitHub issue describing a similar problem: https://github.com/nx10/httpgd/issues/122


  2. This problem is not caused by the spatstat package.

    The error is detected inside the function dev.capabilities from the grDevices package. This function tries to access information about the current graphics device. It fails to access this information. The problem is most likely to originate from the particular graphics device driver that you are using. Please identify what device that is, and alert the maintainer.

    I will make new versions of the packages spatstat.geom and spatstat.explore which avoid this problem. You can download them from the spatstat GitHub repository tomorrow (10 July 2023)

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search