Commit e7abd6b665c4cff5b07ed20382f14cc1b5775c5c

Stefan Sperling 2021-01-22T21:47:37

fix missing close(2) error check in got_worktree_close()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
diff --git a/lib/worktree.c b/lib/worktree.c
index 2d9ccf0..293cbc6 100644
--- a/lib/worktree.c
+++ b/lib/worktree.c
@@ -511,7 +511,9 @@ got_worktree_close(struct got_worktree *worktree)
 	free(worktree->root_path);
 	free(worktree->gotconfig_path);
 	got_gotconfig_free(worktree->gotconfig);
-	close(worktree->root_fd);
+	if (close(worktree->root_fd) == -1 && err == NULL)
+		err = got_error_from_errno2("close",
+		    got_worktree_get_root_path(worktree));
 	free(worktree);
 	return err;
 }