diff --git a/src/main/frontend/db_worker.cljs b/src/main/frontend/db_worker.cljs index e32b08979..8ca57bee7 100644 --- a/src/main/frontend/db_worker.cljs +++ b/src/main/frontend/db_worker.cljs @@ -473,6 +473,7 @@ "web worker entry" [] (let [^js obj (DBWorker.)] + (state/set-worker-object! obj) (file/c work)) (worker-util/post-message :add-repo (pr-str {:repo repo})) diff --git a/src/main/frontend/worker/state.cljs b/src/main/frontend/worker/state.cljs index d0fb9a7f3..2fe3869af 100644 --- a/src/main/frontend/worker/state.cljs +++ b/src/main/frontend/worker/state.cljs @@ -2,7 +2,9 @@ "State hub for worker" (:require [logseq.common.util :as common-util])) -(defonce *state (atom {:db/latest-transact-time {} +(defonce *state (atom {:worker/object nil + + :db/latest-transact-time {} :worker/context {} :config {} @@ -68,3 +70,7 @@ [new-state] (swap! *state (fn [old-state] (merge old-state new-state)))) + +(defn set-worker-object! + [worker] + (swap! *state assoc :worker/object worker))