summaryrefslogtreecommitdiffstats
path: root/mbbsd/fav.c
diff options
context:
space:
mode:
Diffstat (limited to 'mbbsd/fav.c')
-rw-r--r--mbbsd/fav.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/mbbsd/fav.c b/mbbsd/fav.c
index 6590e57e..9479979e 100644
--- a/mbbsd/fav.c
+++ b/mbbsd/fav.c
@@ -866,18 +866,17 @@ int fav_v3_to_v4(void)
fav3_board_t *brd;
setuserfile(buf, FAV4);
- fd = open(buf, O_RDONLY);
- if (fd >= 0){
- close(fd);
+ if (dashf(buf))
return 0;
- }
fdw = open(buf, O_WRONLY | O_CREAT | O_TRUNC, 0600);
if (fdw < 0)
return -1;
setuserfile(buf, FAV3);
fd = open(buf, O_RDONLY);
- if (fd < 0)
+ if (fd < 0) {
+ close(fdw);
return -1;
+ }
read(fd, &nDatas, sizeof(nDatas));
read(fd, &nLines, sizeof(nLines));
@@ -917,5 +916,7 @@ int fav_v3_to_v4(void)
write_favrec(fdw, fav4);
fav_free_branch(fav4);
free(brd);
+ close(fd);
+ close(fdw);
return 0;
}