File tree Expand file tree Collapse file tree 1 file changed +14
-6
lines changed
Expand file tree Collapse file tree 1 file changed +14
-6
lines changed Original file line number Diff line number Diff line change 496496 :name (symbol (str ns ) (str k)))))]))
497497 (into {}))))))
498498
499+ (def load-mutex (Object. ))
500+
499501#?(:clj
500502 (defn load-core []
501503 (when (not @-cljs-macros-loaded)
502504 (reset! -cljs-macros-loaded true )
503505 (if *cljs-macros-is-classpath*
504- (load *cljs-macros-path*)
505- (load-file *cljs-macros-path*)))
506+ (locking load-mutex
507+ (load *cljs-macros-path*))
508+ (locking load-mutex
509+ (load-file *cljs-macros-path*))))
506510 (intern-macros 'cljs.core)))
507511
508512#?(:clj
25022506 (get-in reloads [:use-macros nsym])
25032507 (and (= nsym name) *reload-macros* :reload ))]
25042508 (if k
2505- (clojure.core/require nsym k)
2506- (clojure.core/require nsym))
2509+ (locking load-mutex
2510+ (clojure.core/require nsym k))
2511+ (locking load-mutex
2512+ (clojure.core/require nsym)))
25072513 (intern-macros nsym k)))
25082514 (doseq [nsym (vals require-macros)]
25092515 (let [k (or (:require-macros reload)
25102516 (get-in reloads [:require-macros nsym])
25112517 (and (= nsym name) *reload-macros* :reload ))]
25122518 (if k
2513- (clojure.core/require nsym k)
2514- (clojure.core/require nsym))
2519+ (locking load-mutex
2520+ (clojure.core/require nsym k))
2521+ (locking load-mutex
2522+ (clojure.core/require nsym)))
25152523 (intern-macros nsym k)))
25162524 (when (seq use-macros)
25172525 (check-use-macros use-macros env)))
You can’t perform that action at this time.
0 commit comments