Skip to content

Commit d8f0a46

Browse files
committed
demorgan
1 parent db53ed6 commit d8f0a46

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/main/clojure/clojure/core/async.clj

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -555,15 +555,15 @@ IOC and vthread code.
555555
Returns a channel which will receive the result of the body when
556556
completed"
557557
[& body]
558-
(if (not (dispatch/target-vthreads?))
559-
(do (require-fresh 'clojure.core.async.impl.go)
560-
((find-var 'clojure.core.async.impl.go/go-impl) &env body))
561-
(if (and (not (dispatch/vthreads-available-and-allowed?))
562-
(not clojure.core/*compile-files*))
563-
(do (dispatch/ensure-runtime-vthreads!)
564-
`(thread-call (^:once fn* [] ~@body) :io))
558+
(if (dispatch/target-vthreads?)
559+
(if (or (dispatch/vthreads-available-and-allowed?)
560+
clojure.core/*compile-files*)
565561
`(do (dispatch/ensure-runtime-vthreads!)
566-
(thread-call (^:once fn* [] ~@body) :io)))))
562+
(thread-call (^:once fn* [] ~@body) :io))
563+
(do (dispatch/ensure-runtime-vthreads!)
564+
`(thread-call (^:once fn* [] ~@body) :io)))
565+
(do (require-fresh 'clojure.core.async.impl.go)
566+
((find-var 'clojure.core.async.impl.go/go-impl) &env body))))
567567

568568
(defonce ^:private thread-macro-executor nil)
569569

0 commit comments

Comments
 (0)