commit fa47663f7915ef6db546dc4223093aa1e48b902c from: Sergey Bronnikov date: Sat Feb 27 16:08:10 2021 UTC Update FUSE wrapper for read(2) commit - ca83f38a8f43554d8ad171144bc8bcc0ac22a3ac commit + fa47663f7915ef6db546dc4223093aa1e48b902c blob - fd334547694a1d879535173214ad641849337dbc blob + a3a80bc2534eca7e88f084768b08d501d56b315c --- unreliablefs_ops.c +++ unreliablefs_ops.c @@ -240,9 +240,25 @@ int unreliable_read(const char *path, char *buf, size_ return ret; } - ret = pread(fi->fh, buf, size, offset); + int fd; + + if (fi == NULL) { + fd = open(path, O_RDONLY); + } else { + fd = fi->fh; + } + + if (fd == -1) { + return -errno; + } + + ret = pread(fd, buf, size, offset); if (ret == -1) { ret = -errno; + } + + if (fi == NULL) { + close(fd); } return ret;