From: Denton Liu Date: Tue, 07 Apr 2020 14:27:53 GMT Subject: [PATCH v5 06/22] sequencer: configurably warn on non-existent files Message-ID: <8c504427e376470fb0d939b9c9da315e7fabf36f.1586269543.git.liu.denton@gmail.com> In-Reply-To: In the future, we plan on externing read_oneliner(). Future users of read_oneliner() will want the ability to output warnings in the event that the `path` doesn't exist. Introduce the `READ_ONELINER_WARN_MISSING` flag which, if active, would issue a warning when a file doesn't exist by always executing warning_errno() in the case where strbuf_read_file() fails. Signed-off-by: Denton Liu --- sequencer.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sequencer.c b/sequencer.c index 6c4e8743ef..32cc289da3 100644 --- a/sequencer.c +++ b/sequencer.c @@ -420,6 +420,7 @@ static int write_message(const void *buf, size_t len, const char *filename, } #define READ_ONELINER_SKIP_IF_EMPTY (1 << 0) +#define READ_ONELINER_WARN_MISSING (1 << 1) /* * Reads a file that was presumably written by a shell script, i.e. with an @@ -436,7 +437,8 @@ static int read_oneliner(struct strbuf *buf, int orig_len = buf->len; if (strbuf_read_file(buf, path, 0) < 0) { - if (errno != ENOENT && errno != ENOTDIR) + if ((flags & READ_ONELINER_WARN_MISSING) || + (errno != ENOENT && errno != ENOTDIR)) warning_errno(_("could not read '%s'"), path); return 0; } -- 2.26.0.159.g23e2136ad0