Error(s) in re-building vignettes:
  ...
--- re-building ‘introduction-to-pointdexter.Rmd’ using rmarkdown
 ----------- FAILURE REPORT -------------- 
 --- failure: the condition has length > 1 ---
 --- srcref --- 
: 
 --- package (from environment) --- 
pointdexter
 --- call from context --- 
LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
    lat = cps_sy1819$school_latitude, polygon.boundaries = boundary)
 --- call from argument --- 
if (class(polygon.boundaries) != "matrix") {
    if (!is.list(polygon.boundaries)) {
        stop("polygon.boundaries must either be of class matrix or a list of matrices.\n See ?GetPolygonBoundaries for more information.")
    }
}
 --- R stacktrace ---
where 1: LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
    lat = cps_sy1819$school_latitude, polygon.boundaries = boundary)
where 2: eval(expr, envir, enclos)
where 3: eval(expr, envir, enclos)
where 4: withVisible(eval(expr, envir, enclos))
where 5: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, 
    error = eHandler, message = mHandler)
where 6: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, 
    enclos)), warning = wHandler, error = eHandler, message = mHandler))
where 7: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, 
    envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
where 8: 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)
where 9: evaluate::evaluate(...)
where 10: 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))
where 11: 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)))
where 12: block_exec(params)
where 13: call_block(x)
where 14: process_group.block(group)
where 15: process_group(group)
where 16: 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"), 
            ") ")
    })
where 17: process_file(text, output)
where 18: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet, 
    encoding = encoding)
where 19: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), 
    ...)
where 20: vweave_rmarkdown(...)
where 21: engine$weave(file, quiet = quiet, encoding = enc)
where 22: doTryCatch(return(expr), name, parentenv, handler)
where 23: tryCatchOne(expr, names, parentenv, handlers[[1L]])
where 24: tryCatchList(expr, classes, parentenv, handlers)
where 25: tryCatch({
    engine$weave(file, quiet = quiet, encoding = enc)
    setwd(startdir)
    output <- find_vignette_product(name, by = "weave", engine = engine)
    if (!have.makefile && vignette_is_tex(output)) {
        texi2pdf(file = output, clean = FALSE, quiet = quiet)
        output <- find_vignette_product(name, by = "texi2pdf", 
            engine = engine)
    }
    outputs <- c(outputs, output)
}, error = function(e) {
    thisOK <<- FALSE
    fails <<- c(fails, file)
    message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", 
        file, conditionMessage(e)))
})
where 26: tools:::buildVignettes(dir = "/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/pointdexter.Rcheck/vign_test/pointdexter", 
    ser_elibs = "/home/hornik/tmp/scratch/RtmplEyJWW/file5b84f59c833.rds")

 --- value of length: 2 type: logical ---
[1] FALSE  TRUE
 --- function from context --- 
function (lng, lat, polygon.boundaries) 
{
    if (is.numeric(lng) == FALSE) {
        stop("lng must be a numeric vector.")
    }
    if (is.numeric(lat) == FALSE) {
        stop("lat must be a numeric vector.")
    }
    if (length(lng) != length(lat)) {
        stop("lng and lat must be of equal length.")
    }
    if (any(is.na(lng))) {
        stop("Filter lng and lat so that neither contain any NA values.")
    }
    if (any(is.na(lat))) {
        stop("Filter lng and lat so that neither contain any NA values.")
    }
    if (class(polygon.boundaries) != "matrix") {
        if (!is.list(polygon.boundaries)) {
            stop("polygon.boundaries must either be of class matrix or a list of matrices.\n See ?GetPolygonBoundaries for more information.")
        }
    }
    if (class(polygon.boundaries) != "list") {
        if (!is.matrix(polygon.boundaries)) {
            stop("polygon.boundaries must either be of class matrix or a list of matrices. See ?GetPolygonBoundaries for more information.")
        }
    }
    if (is.list(polygon.boundaries) & is.null(names(polygon.boundaries))) {
        stop("Please label the matrices within polygon.boundaries. See ?names for more details.")
    }
    df <- data.frame(x = lng, y = lat, index = 1:length(lng))
    if (is.matrix(polygon.boundaries)) {
        return(df$index %in% splancs::inpip(pts = df, poly = polygon.boundaries, 
            bound = NULL))
    }
    else {
        temp <- lapply(X = polygon.boundaries, FUN = function(i) splancs::inpip(pts = df, 
            poly = i, bound = NULL))
        names(temp) <- names(polygon.boundaries)
        temp <- utils::stack(temp)
        names(temp)[names(temp) == "values"] <- "index"
        names(temp)[names(temp) == "ind"] <- "label"
        temp$label <- as.character(temp$label)
        if (nrow(df) > nrow(temp)) {
            no.label.points <- data.frame(index = df$index[which(!df$index %in% 
                temp$index)], label = NA)
            temp <- rbind(temp, no.label.points)
        }
        temp <- temp[order(temp$index), ]
        return(temp$label)
    }
}
<bytecode: 0x5641e74059c8>
<environment: namespace:pointdexter>
 --- function search by body ---
Function LabelPointsWithinPolygons in namespace pointdexter has this body.
 ----------- END OF FAILURE REPORT -------------- 
Fatal error: the condition has length > 1