fn windowsWriteBuffer(header: []const u8, data: []const []const u8, splat: usize) []const u8 header: []const u8data: []const []const u8splat: usize3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325fn windowsWriteBuffer(header: []const u8, data: []const []const u8, splat: usize) []const u8 {
const buffer = b: {
if (header.len != 0) break :b header;
for (data[0 .. data.len - 1]) |buffer| {
if (buffer.len != 0) break :b buffer;
}
if (splat == 0) return &.{};
break :b data[data.len - 1];
};
return buffer[0..std.math.lossyCast(u32, buffer.len)];
}
Since Windows only supports writing one contiguous buffer, returns the first one, while also limiting it to a length representable by 32-bit unsigned integer.