wrapper.c: add and use fopen_or_warn()
When fopen() returns NULL, it could be because the given path does not exist, but it could also be some other errors and the caller has to check. Add a wrapper so we don't have to repeat the same error check everywhere. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
11dc1fcb3f
commit
e9d983f116
@ -897,8 +897,8 @@ static void flush_rewritten_pending(void) {
|
||||
FILE *out;
|
||||
|
||||
if (strbuf_read_file(&buf, rebase_path_rewritten_pending(), 82) > 0 &&
|
||||
!get_sha1("HEAD", newsha1) &&
|
||||
(out = fopen(rebase_path_rewritten_list(), "a"))) {
|
||||
!get_sha1("HEAD", newsha1) &&
|
||||
(out = fopen_or_warn(rebase_path_rewritten_list(), "a"))) {
|
||||
char *bol = buf.buf, *eol;
|
||||
|
||||
while (*bol) {
|
||||
@ -917,7 +917,7 @@ static void flush_rewritten_pending(void) {
|
||||
|
||||
static void record_in_rewritten(struct object_id *oid,
|
||||
enum todo_command next_command) {
|
||||
FILE *out = fopen(rebase_path_rewritten_pending(), "a");
|
||||
FILE *out = fopen_or_warn(rebase_path_rewritten_pending(), "a");
|
||||
|
||||
if (!out)
|
||||
return;
|
||||
@ -1378,7 +1378,7 @@ static int read_populate_todo(struct todo_list *todo_list,
|
||||
|
||||
if (is_rebase_i(opts)) {
|
||||
struct todo_list done = TODO_LIST_INIT;
|
||||
FILE *f = fopen(rebase_path_msgtotal(), "w");
|
||||
FILE *f = fopen_or_warn(rebase_path_msgtotal(), "w");
|
||||
|
||||
if (strbuf_read_file(&done.buf, rebase_path_done(), 0) > 0 &&
|
||||
!parse_insn_buffer(done.buf.buf, &done))
|
||||
|
||||
Reference in New Issue
Block a user