- sz = btr_next_buffer(sot->btrn, &buf);
- if (sz == 0)
- return;
- ret = write_nonblock(STDOUT_FILENO, buf, sz, 0);
- if (ret < 0) {
- t->error = -ERRNO_TO_PARA_ERROR(errno);
- goto err;
+
+ 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);