@@ -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