Commit 3c45a94528

mlugg <mlugg@mlugg.co.uk>
2024-04-16 23:38:54
Value: fix out-of-bounds slice access writing zero-bit undef value
I have no idea why this wasn't being hit on master before.
1 parent 03ad862
Changed files (1)
src/Value.zig
@@ -469,7 +469,9 @@ pub fn writeToPackedMemory(
     const endian = target.cpu.arch.endian();
     if (val.isUndef(mod)) {
         const bit_size: usize = @intCast(ty.bitSize(mod));
-        std.mem.writeVarPackedInt(buffer, bit_offset, bit_size, @as(u1, 0), endian);
+        if (bit_size != 0) {
+            std.mem.writeVarPackedInt(buffer, bit_offset, bit_size, @as(u1, 0), endian);
+        }
         return;
     }
     switch (ty.zigTypeTag(mod)) {