]> mj.ucw.cz Git - libucw.git/blobdiff - lib/fb-direct.c
Let bconfig() return the original value.
[libucw.git] / lib / fb-direct.c
index b82faa9157a05aabcdca4c373ba658316df5d629..2fa6ec7f7e16e12037f6a98d017d3c48fcced9e3 100644 (file)
@@ -268,7 +268,7 @@ fbdir_close(struct fastbuf *f)
     {
     case 1:
       if (unlink(f->name) < 0)
-       log(L_ERROR, "unlink(%s): %m", f->name);
+       msg(L_ERROR, "unlink(%s): %m", f->name);
     case 0:
       close(F->fd);
     }
@@ -279,18 +279,21 @@ fbdir_close(struct fastbuf *f)
 static int
 fbdir_config(struct fastbuf *f, uns item, int value)
 {
+  int orig;
+
   switch (item)
     {
     case BCONFIG_IS_TEMP_FILE:
+      orig = FB_DIRECT(f)->is_temp_file;
       FB_DIRECT(f)->is_temp_file = value;
-      return 0;
+      return orig;
     default:
       return -1;
     }
 }
 
 struct fastbuf *
-fbdir_open_fd_internal(int fd, byte *name, struct asio_queue *q, uns buffer_size, uns read_ahead UNUSED, uns write_back)
+fbdir_open_fd_internal(int fd, const char *name, struct asio_queue *q, uns buffer_size, uns read_ahead UNUSED, uns write_back)
 {
   int namelen = strlen(name) + 1;
   struct fb_direct *F = xmalloc(sizeof(struct fb_direct) + namelen);