]> mj.ucw.cz Git - libucw.git/blobdiff - ucw/fb-direct.c
Fastbufs: Clean up exception handling
[libucw.git] / ucw / fb-direct.c
index 1e2dfd89c53f3f0c6d9806192c8ac614f52b3004..74249a31feb589525fe7b587cb7aedae5f461b7e 100644 (file)
@@ -159,7 +159,7 @@ fbdir_refill(struct fastbuf *f)
   if (!r->status)
     return 0;
   if (r->status < 0)
   if (!r->status)
     return 0;
   if (r->status < 0)
-    die("Error reading %s: %s", f->name, strerror(r->returned_errno));
+    bthrow(f, "read", "Error reading %s: %s", f->name, strerror(r->returned_errno));
   f->bptr = f->buffer = r->buffer;
   f->bstop = f->bufend = f->buffer + r->status;
   f->pos += r->status;
   f->bptr = f->buffer = r->buffer;
   f->bstop = f->bufend = f->buffer + r->status;
   f->pos += r->status;
@@ -193,7 +193,7 @@ fbdir_spout(struct fastbuf *f)
          asio_sync(F->io_queue);
          DBG("FB-DIRECT: Truncating at %llu", (long long)f->pos);
          if (ucw_ftruncate(F->fd, f->pos) < 0)
          asio_sync(F->io_queue);
          DBG("FB-DIRECT: Truncating at %llu", (long long)f->pos);
          if (ucw_ftruncate(F->fd, f->pos) < 0)
-           die("Error truncating %s: %m", f->name);
+           bthrow(f, "write", "Error truncating %s: %m", f->name);
        }
       else
        asio_submit(r);
        }
       else
        asio_submit(r);