about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/buffer.nim6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/buffer.nim b/src/server/buffer.nim
index f4e1d1b2..f57a9184 100644
--- a/src/server/buffer.nim
+++ b/src/server/buffer.nim
@@ -1428,10 +1428,10 @@ proc baseURL(buffer: Buffer): URL =
   return buffer.document.baseURL
 
 proc evalJSURL(buffer: Buffer; url: URL): Opt[string] =
-  let encodedScriptSource = ($url)["javascript:".len..^1]
-  let scriptSource = percentDecode(encodedScriptSource)
+  let surl = $url
+  let source = surl.toOpenArray("javascript:".len, surl.high).percentDecode()
   let ctx = buffer.window.jsctx
-  let ret = ctx.eval(scriptSource, $buffer.baseURL, JS_EVAL_TYPE_GLOBAL)
+  let ret = ctx.eval(source, $buffer.baseURL, JS_EVAL_TYPE_GLOBAL)
   if JS_IsException(ret):
     ctx.writeException(buffer.estream)
     return err() # error