Skip to content

Commit 621ebea

Browse files
committed
Streamline daemons() follow up to #407
1 parent fe5e210 commit 621ebea

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

R/daemons.R

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ daemons <- function(
228228
envir <- ..[[.compute]]
229229

230230
if (is.character(url)) {
231-
if (is.null(envir)) {
231+
res <- if (is.null(envir)) {
232232
url <- url[1L]
233233
envir <- init_envir_stream(seed)
234234
dots <- parse_dots(envir, ...)
@@ -241,12 +241,12 @@ daemons <- function(
241241
create_sock(envir, url, cfg[[2L]])
242242
}
243243
create_profile(envir, .compute, 0L, dots)
244-
envir <- NULL
245244
if (length(remote)) {
246245
on.exit(daemons(0L, .compute = .compute))
247246
launch_remote(n = n, remote = remote, .compute = .compute)
248247
on.exit()
249248
}
249+
TRUE
250250
}
251251
} else {
252252
signal <- is.null(n)
@@ -262,7 +262,7 @@ daemons <- function(
262262
..[[.compute]] <- NULL -> envir
263263
return(invisible())
264264
}
265-
if (is.null(envir)) {
265+
res <- if (is.null(envir)) {
266266
n > 0L || stop(._[["n_zero"]])
267267
dynGet(".mirai_within_map", ifnotfound = FALSE) && stop(._[["within_map"]])
268268
envir <- init_envir_stream(seed)
@@ -275,11 +275,10 @@ daemons <- function(
275275
launch_daemons(seq_len(n), dots, envir)
276276
}
277277
create_profile(envir, .compute, n, dots)
278-
envir <- NULL
279278
}
280279
}
281280

282-
is.null(envir) || return({
281+
is.null(res) && return({
283282
daemons(0, .compute = .compute)
284283
daemons(
285284
n = n,

0 commit comments

Comments
 (0)