1 files changed, 7 insertions, 5 deletions
diff --git a/src/root.zig b/src/root.zig
index 0e26e33..a2561bf 100644
--- a/src/root.zig
+++ b/src/root.zig
@@ -344,11 +344,13 @@ pub fn eval(comptime T: type, str: []const u8,
var ret: Value = undefined;
const errflags = janet.dobytes(root_env, str.ptr, @intCast(str.len),
src, &ret);
- return if (errflags == 0) .{
- .ret = try unwrap(T, ret)
- } else .{
- .err = try unwrap([]const u8, ret) // TODO: trace
- };
+ if (errflags == 0) {
+ return .{ .ret = try unwrap(T, ret) };
+ } else {
+ const string = janet.unwrapString(ret);
+ const len = janet.stringLength(string);
+ return .{ .err = string[0..@intCast(len)] }; // TODO: trace
+ }
}
test eval {
|