@@ -876,7 +876,7 @@ static int defrag_callback(const char *fpath, const struct stat *sb,
if ((typeflag == FTW_F) && S_ISREG(sb->st_mode)) {
if (defrag_global_verbose)
printf("%s\n", fpath);
- fd = open(fpath, O_RDWR);
+ fd = open(fpath, O_RDONLY);
if (fd < 0) {
goto error;
}
@@ -1012,7 +1012,7 @@ static int cmd_filesystem_defrag(int argc, char **argv)
int defrag_err = 0;
dirstream = NULL;
- fd = open_file_or_dir(argv[i], &dirstream);
+ fd = open_file_or_dir3(argv[i], &dirstream, O_RDONLY);
if (fd < 0) {
error("cannot open %s: %m", argv[i]);
ret = -errno;
NOT FOR MERGING -- requires kernel versioning Fixes EXTXBSY races. Signed-off-by: Adam Borowski <kilobyte@angband.pl> --- cmds-filesystem.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)