Skip to content

Commit b1ffbe7

Browse files
committed
fix: problem when printing qenv.error
1 parent 281c994 commit b1ffbe7

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

R/qenv-get_var.R

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,15 @@ setMethod("[[", signature = c("qenv", "ANY"), function(x, i) {
6060
`$.qenv.error` <- function(x, name) {
6161
# Must allow access of elements in qenv.error object (message, call, trace, ...)
6262
# Otherwise, it will enter an infinite recursion with the `conditionMessage(x)` call.
63-
result <- NextMethod("$", x)
64-
if (is.null(result)) {
65-
class(x) <- setdiff(class(x), "qenv.error")
66-
stop(errorCondition(
67-
list(message = conditionMessage(x)),
68-
class = c("validation", "try-error", "simpleError")
69-
))
63+
if (name %in% names(x)) {
64+
return(NextMethod("$", x))
7065
}
71-
result
66+
67+
class(x) <- setdiff(class(x), "qenv.error")
68+
stop(errorCondition(
69+
list(message = conditionMessage(x)),
70+
class = c("validation", "try-error", "simpleError")
71+
))
7272
}
7373

7474
#' @export

0 commit comments

Comments
 (0)