Просмотр исходного кода

fix: opencode hanging when using client.app.log() during initialization (#11642)

Desmond Sow 3 недель назад
Родитель
Сommit
eace76e525
1 измененных файлов с 9 добавлено и 6 удалено
  1. 9 6
      packages/opencode/src/server/server.ts

+ 9 - 6
packages/opencode/src/server/server.ts

@@ -185,12 +185,15 @@ export namespace Server {
           },
         )
         .use(async (c, next) => {
-          let directory = c.req.query("directory") || c.req.header("x-opencode-directory") || process.cwd()
-          try {
-            directory = decodeURIComponent(directory)
-          } catch {
-            // fallback to original value
-          }
+          if (c.req.path === "/log") return next()
+          const raw = c.req.query("directory") || c.req.header("x-opencode-directory") || process.cwd()
+          const directory = (() => {
+            try {
+              return decodeURIComponent(raw)
+            } catch {
+              return raw
+            }
+          })()
           return Instance.provide({
             directory,
             init: InstanceBootstrap,