| ... | @@ -266,8 +266,7 @@ pub fn streamRemaining(r: *Reader, w: *Writer) StreamRemainingError!usize { | ... | @@ -266,8 +266,7 @@ pub fn streamRemaining(r: *Reader, w: *Writer) StreamRemainingError!usize { |
| 266 | /// number of bytes discarded. | 266 | /// number of bytes discarded. |
| 267 | pub fn discardRemaining(r: *Reader) ShortError!usize { | 267 | pub fn discardRemaining(r: *Reader) ShortError!usize { |
| 268 | var offset: usize = r.end - r.seek; | 268 | var offset: usize = r.end - r.seek; |
| 269 | r.seek = 0; | 269 | r.seek = r.end; |
| 270 | r.end = 0; | | |
| 271 | while (true) { | 270 | while (true) { |
| 272 | offset += r.vtable.discard(r, .unlimited) catch |err| switch (err) { | 271 | offset += r.vtable.discard(r, .unlimited) catch |err| switch (err) { |
| 273 | error.EndOfStream => return offset, | 272 | error.EndOfStream => return offset, |
| ... | @@ -526,8 +525,7 @@ pub fn toss(r: *Reader, n: usize) void { | ... | @@ -526,8 +525,7 @@ pub fn toss(r: *Reader, n: usize) void { |
| 526 | | 525 | |
| 527 | /// Equivalent to `toss(r.bufferedLen())`. | 526 | /// Equivalent to `toss(r.bufferedLen())`. |
| 528 | pub fn tossBuffered(r: *Reader) void { | 527 | pub fn tossBuffered(r: *Reader) void { |
| 529 | r.seek = 0; | 528 | r.seek = r.end; |
| 530 | r.end = 0; | | |
| 531 | } | 529 | } |
| 532 | | 530 | |
| 533 | /// Equivalent to `peek` followed by `toss`. | 531 | /// Equivalent to `peek` followed by `toss`. |
| ... | @@ -614,8 +612,7 @@ pub fn discardShort(r: *Reader, n: usize) ShortError!usize { | ... | @@ -614,8 +612,7 @@ pub fn discardShort(r: *Reader, n: usize) ShortError!usize { |
| 614 | return n; | 612 | return n; |
| 615 | } | 613 | } |
| 616 | var remaining = n - (r.end - r.seek); | 614 | var remaining = n - (r.end - r.seek); |
| 617 | r.end = 0; | 615 | r.seek = r.end; |
| 618 | r.seek = 0; | | |
| 619 | while (true) { | 616 | while (true) { |
| 620 | const discard_len = r.vtable.discard(r, .limited(remaining)) catch |err| switch (err) { | 617 | const discard_len = r.vtable.discard(r, .limited(remaining)) catch |err| switch (err) { |
| 621 | error.EndOfStream => return n - remaining, | 618 | error.EndOfStream => return n - remaining, |