mirror of
https://codeberg.org/ziglang/zig.git
synced 2026-03-08 02:24:33 +01:00
std: fix deprecated writer not handling the buffer
This commit is contained in:
parent
91640f5f81
commit
ec5cdb2fe3
2 changed files with 12 additions and 2 deletions
|
|
@ -419,9 +419,14 @@ pub fn GenericWriter(
|
|||
new_interface: Writer,
|
||||
err: ?Error = null,
|
||||
|
||||
fn drain(w: *Writer, data: []const []const u8, splat: usize) Writer.Error!usize {
|
||||
fn drain(w: *std.io.Writer, data: []const []const u8, splat: usize) std.io.Writer.Error!usize {
|
||||
_ = splat;
|
||||
const a: *@This() = @alignCast(@fieldParentPtr("new_interface", w));
|
||||
const buffered = w.buffered();
|
||||
if (buffered.len != 0) return w.consume(a.derp_writer.write(buffered) catch |err| {
|
||||
a.err = err;
|
||||
return error.WriteFailed;
|
||||
});
|
||||
return a.derp_writer.write(data[0]) catch |err| {
|
||||
a.err = err;
|
||||
return error.WriteFailed;
|
||||
|
|
|
|||
|
|
@ -100,7 +100,12 @@ pub const Adapter = struct {
|
|||
|
||||
fn drain(w: *std.io.Writer, data: []const []const u8, splat: usize) std.io.Writer.Error!usize {
|
||||
_ = splat;
|
||||
const a: *@This() = @fieldParentPtr("new_interface", w);
|
||||
const a: *@This() = @alignCast(@fieldParentPtr("new_interface", w));
|
||||
const buffered = w.buffered();
|
||||
if (buffered.len != 0) return w.consume(a.derp_writer.write(buffered) catch |err| {
|
||||
a.err = err;
|
||||
return error.WriteFailed;
|
||||
});
|
||||
return a.derp_writer.write(data[0]) catch |err| {
|
||||
a.err = err;
|
||||
return error.WriteFailed;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue