aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/runtime.zig14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/runtime.zig b/src/runtime.zig
index 04161a524..7ea59f430 100644
--- a/src/runtime.zig
+++ b/src/runtime.zig
@@ -3,13 +3,23 @@ usingnamespace @import("ast/base.zig");
usingnamespace @import("global.zig");
const std = @import("std");
pub const ProdSourceContent = @embedFile("./runtime.out.js");
-
+const resolve_path = @import("./resolver/resolve_path.zig");
const Fs = @import("./fs.zig");
pub const Runtime = struct {
pub fn sourceContent() string {
if (comptime isDebug) {
- var runtime_path = std.fs.path.join(std.heap.c_allocator, &[_]string{ std.fs.path.dirname(@src().file).?, "runtime.out.js" }) catch unreachable;
+ var dirpath = std.fs.path.dirname(@src().file).?;
+ var env = std.process.getEnvMap(std.heap.c_allocator) catch unreachable;
+
+ const dir = std.mem.replaceOwned(
+ u8,
+ std.heap.c_allocator,
+ dirpath,
+ "jarred",
+ env.get("USER").?,
+ ) catch unreachable;
+ var runtime_path = std.fs.path.join(std.heap.c_allocator, &[_]string{ dir, "runtime.out.js" }) catch unreachable;
const file = std.fs.openFileAbsolute(runtime_path, .{}) catch unreachable;
defer file.close();
return file.readToEndAlloc(std.heap.c_allocator, (file.stat() catch unreachable).size) catch unreachable;