aboutsummaryrefslogtreecommitdiff
path: root/lib/sv.c
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2025-05-30 08:12:49 +0100
committerAryadev Chavali <aryadev@aryadevchavali.com>2025-05-30 08:12:49 +0100
commit4dc3d8f8325994d737f1959c1554480f4ccbc60f (patch)
tree0636c4fc330b6772e5ea12defa7d6f5d108f11e0 /lib/sv.c
parentbfff660d0e1a03063b889f84e8cfd046565c6046 (diff)
downloadoats-4dc3d8f8325994d737f1959c1554480f4ccbc60f.tar.gz
oats-4dc3d8f8325994d737f1959c1554480f4ccbc60f.tar.bz2
oats-4dc3d8f8325994d737f1959c1554480f4ccbc60f.zip
Fix issue with memory allocations in lisp::serialise
Was to do with sv_make.
Diffstat (limited to 'lib/sv.c')
-rw-r--r--lib/sv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/sv.c b/lib/sv.c
index b2425b8..a83f303 100644
--- a/lib/sv.c
+++ b/lib/sv.c
@@ -60,7 +60,8 @@ sv_t sv_chop(sv_t sv, u64 size)
sv_t sv_concat(arena_t *allocator, sv_t a, sv_t b)
{
- sv_t c = sv_make(allocator, a.data, a.size + b.size);
+ sv_t c = sv_make(allocator, NULL, a.size + b.size);
+ memcpy(c.data, a.data, a.size);
memcpy(c.data + a.size, b.data, b.size);
return c;
}