Error in re-building vignettes:
  ...

 *** caught segfault ***
address 0x1e6, cause 'memory not mapped'

Traceback:
 1: curl::curl_fetch_memory(url)
 2: download_url(path)
 3: paste0(download_url(path), suffix)
 4: FUN(X[[i]], ...)
 5: vapply(path, replace_url, character(1))
 6: image_read(img)
 7: imageGrob(data$x, data$y, data$size, imgs[i], by, hjust, image_color,     alpha, image_fun, angle, asp)
 8: FUN(X[[i]], ...)
 9: lapply(seq_along(groups), function(i) {    data <- groups[[i]]    imageGrob(data$x, data$y, data$size, imgs[i], by, hjust,         image_color, alpha, image_fun, angle, asp)})
10: f(...)
11: (function (...) f(...))(data, panel_params, coord, na.rm = FALSE, by = "width",     image_color = NULL, nudge_x = 0, angle = 0, .fun = function (id)     {        paste0("https://raw.githubusercontent.com/ionic-team/ionicons/master/src/svg/",             id, ".svg")    })
12: do.call(self$draw_panel, args)
13: .fun(piece, ...)
14: (function (i) {    piece <- pieces[[i]]    if (.inform) {        res <- try(.fun(piece, ...))        if (inherits(res, "try-error")) {            piece <- paste(utils::capture.output(print(piece)),                 collapse = "\n")            stop("with piece ", i, ": \n", piece, call. = FALSE)        }    }    else {        res <- .fun(piece, ...)    }    progress$step()    res})(1L)
15: loop_apply(n, do.ply)
16: llply(.data = pieces, .fun = .fun, ..., .progress = .progress,     .inform = .inform, .parallel = .parallel, .paropts = .paropts)
17: plyr::dlply(data, "PANEL", function(data) {    if (empty(data))         return(zeroGrob())    panel_params <- layout$panel_params[[data$PANEL[1]]]    do.call(self$draw_panel, args)}, .drop = FALSE)
18: f(..., self = self)
19: self$geom$draw_layer(data, self$geom_params, layout, layout$coord)
20: f(..., self = self)
21: l$draw_geom(d, layout)
22: (function (l, d) l$draw_geom(d, layout))(dots[[1L]][[1L]], dots[[2L]][[1L]])
23: mapply(FUN = f, ..., SIMPLIFY = FALSE)
24: Map(function(l, d) l$draw_geom(d, layout), plot$layers, data)
25: ggplot_gtable.ggplot_built(data)
26: ggplot_gtable(data)
27: print.ggplot(x)
28: print(x)
29: normal_print(x)
30: knit_print.default(x, ...)
31: knit_print(x, ...)
32: withVisible(knit_print(x, ...))
33: fun(x, options = options)
34: value_fun(ev$value, ev$visible)
35: withVisible(value_fun(ev$value, ev$visible))
36: withCallingHandlers(withVisible(value_fun(ev$value, ev$visible)),     warning = wHandler, error = eHandler, message = mHandler)
37: handle(pv <- withCallingHandlers(withVisible(value_fun(ev$value,     ev$visible)), warning = wHandler, error = eHandler, message = mHandler))
38: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos,     debug = debug, last = i == length(out), use_try = stop_on_error !=         2L, keep_warning = keep_warning, keep_message = keep_message,     output_handler = output_handler, include_timing = include_timing)
39: evaluate::evaluate(...)
40: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning),     keep_message = !isFALSE(options$message), stop_on_error = if (options$error &&         options$include) 0L else 2L, output_handler = knit_handlers(options$render,         options))
41: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE,     keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message),     stop_on_error = if (options$error && options$include) 0L else 2L,     output_handler = knit_handlers(options$render, options)))
42: block_exec(params)
43: call_block(x)
44: process_group.block(group)
45: process_group(group)
46: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        setwd(wd)        cat(res, sep = "\n", file = output %n% "")        message("Quitting from lines ", paste(current_lines(i),             collapse = "-"), " (", knit_concord$get("infile"),             ") ")    })
47: process_file(text, output)
48: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet,     encoding = encoding)
49: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv())
50: vweave_rmarkdown(...)
51: engine$weave(file, quiet = quiet, encoding = enc)
52: doTryCatch(return(expr), name, parentenv, handler)
53: tryCatchOne(expr, names, parentenv, handlers[[1L]])
54: tryCatchList(expr, classes, parentenv, handlers)
55: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)    setwd(startdir)    find_vignette_product(name, by = "weave", engine = engine)}, error = function(e) {    stop(gettextf("processing vignette '%s' failed with diagnostics:\n%s",         file, conditionMessage(e)), domain = NA, call. = FALSE)})
56: buildVignettes(dir = "/home/hornik/tmp/R.check/r-release-gcc/Work/PKGS/ggimage.Rcheck/vign_test/ggimage")
An irrecoverable exception occurred. R is aborting now ...
Segmentation fault