- sz = btr_next_buffer(btrn, &buf);
- assert(sz > 0);
- ret = write_nonblock(STDOUT_FILENO, buf, sz, 0);
+
+ for (;;) {
+ sz = btr_next_buffer(btrn, &buf);
+ if (sz == 0)
+ break;
+ ret = write_nonblock(STDOUT_FILENO, buf, sz, 0);
+ if (ret <= 0)
+ break;
+ btr_consume(btrn, ret);
+ }
+out: