* [PATCH 0/2] Fix two issues pointed out by Coverity @ 2019-05-21 17:50 Johannes Schindelin via GitGitGadget 2019-05-21 17:50 ` [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one Johannes Schindelin via GitGitGadget 2019-05-21 17:50 ` [PATCH 2/2] bisect--helper: verify HEAD could be parsed before continuing Johannes Schindelin via GitGitGadget 0 siblings, 2 replies; 4+ messages in thread From: Johannes Schindelin via GitGitGadget @ 2019-05-21 17:50 UTC (permalink / raw) To: git; +Cc: Junio C Hamano I looked very briefly over the issues pointed out by Coverity, and decided to pluck these two low-hanging pieces of fruit. Johannes Schindelin (2): rebase: replace incorrect logical negation by correct bitwise one bisect--helper: verify HEAD could be parsed before continuing builtin/bisect--helper.c | 5 ++++- builtin/rebase.c | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) base-commit: aa25c82427ae70aebf3b8f970f2afd54e9a2a8c6 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-221%2Fdscho%2Faddress-coverity-reports-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-221/dscho/address-coverity-reports-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/221 -- gitgitgadget ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one 2019-05-21 17:50 [PATCH 0/2] Fix two issues pointed out by Coverity Johannes Schindelin via GitGitGadget @ 2019-05-21 17:50 ` Johannes Schindelin via GitGitGadget 2019-05-28 18:25 ` Junio C Hamano 2019-05-21 17:50 ` [PATCH 2/2] bisect--helper: verify HEAD could be parsed before continuing Johannes Schindelin via GitGitGadget 1 sibling, 1 reply; 4+ messages in thread From: Johannes Schindelin via GitGitGadget @ 2019-05-21 17:50 UTC (permalink / raw) To: git; +Cc: Junio C Hamano, Johannes Schindelin From: Johannes Schindelin <johannes.schindelin@gmx.de> In bff014dac7d9 (builtin rebase: support the `verbose` and `diffstat` options, 2018-09-04), we added a line that wanted to remove the `REBASE_DIFFSTAT` bit from the flags, but it used an incorrect negation. Found by Coverity. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> --- builtin/rebase.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builtin/rebase.c b/builtin/rebase.c index ba3a574e40..db6ca9bd7d 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -1203,7 +1203,7 @@ static int rebase_config(const char *var, const char *value, void *data) if (git_config_bool(var, value)) opts->flags |= REBASE_DIFFSTAT; else - opts->flags &= !REBASE_DIFFSTAT; + opts->flags &= ~REBASE_DIFFSTAT; return 0; } -- gitgitgadget ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one 2019-05-21 17:50 ` [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one Johannes Schindelin via GitGitGadget @ 2019-05-28 18:25 ` Junio C Hamano 0 siblings, 0 replies; 4+ messages in thread From: Junio C Hamano @ 2019-05-28 18:25 UTC (permalink / raw) To: Johannes Schindelin via GitGitGadget; +Cc: git, Johannes Schindelin "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com> writes: > From: Johannes Schindelin <johannes.schindelin@gmx.de> > > In bff014dac7d9 (builtin rebase: support the `verbose` and `diffstat` > options, 2018-09-04), we added a line that wanted to remove the > `REBASE_DIFFSTAT` bit from the flags, but it used an incorrect negation. > > Found by Coverity. > > Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> > --- > builtin/rebase.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/builtin/rebase.c b/builtin/rebase.c > index ba3a574e40..db6ca9bd7d 100644 > --- a/builtin/rebase.c > +++ b/builtin/rebase.c > @@ -1203,7 +1203,7 @@ static int rebase_config(const char *var, const char *value, void *data) > if (git_config_bool(var, value)) > opts->flags |= REBASE_DIFFSTAT; > else > - opts->flags &= !REBASE_DIFFSTAT; > + opts->flags &= ~REBASE_DIFFSTAT; > return 0; > } Obviously correct. Thanks. At this point in the codeflow, the .flags field is not touched by parse_options() yet, the configuration codepath only touches that field for REBASE_DIFFSTAT, and because REBASE_DIFFSTAT is not 0, "[rebase] stat = no", which would want only the REBASE_DIFFSTAT bit cleared in the word, can afford to instead assign 0 to the whole word without causing any damage, which is funny way for this bug to be hidden for a long time... ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 2/2] bisect--helper: verify HEAD could be parsed before continuing 2019-05-21 17:50 [PATCH 0/2] Fix two issues pointed out by Coverity Johannes Schindelin via GitGitGadget 2019-05-21 17:50 ` [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one Johannes Schindelin via GitGitGadget @ 2019-05-21 17:50 ` Johannes Schindelin via GitGitGadget 1 sibling, 0 replies; 4+ messages in thread From: Johannes Schindelin via GitGitGadget @ 2019-05-21 17:50 UTC (permalink / raw) To: git; +Cc: Junio C Hamano, Johannes Schindelin From: Johannes Schindelin <johannes.schindelin@gmx.de> In 06f5608c14e6 (bisect--helper: `bisect_start` shell function partially in C, 2019-01-02), we introduced a call to `get_oid()` and did not check whether it succeeded before using its output. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> --- builtin/bisect--helper.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c index e7325fe37f..1fbe156e67 100644 --- a/builtin/bisect--helper.c +++ b/builtin/bisect--helper.c @@ -570,7 +570,10 @@ static int bisect_start(struct bisect_terms *terms, int no_checkout, write_file(git_path_bisect_start(), "%s\n", start_head.buf); if (no_checkout) { - get_oid(start_head.buf, &oid); + if (get_oid(start_head.buf, &oid) < 0) { + retval = error(_("invalid ref: '%s'"), start_head.buf); + goto finish; + } if (update_ref(NULL, "BISECT_HEAD", &oid, NULL, 0, UPDATE_REFS_MSG_ON_ERR)) { retval = -1; -- gitgitgadget ^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-05-28 18:25 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-05-21 17:50 [PATCH 0/2] Fix two issues pointed out by Coverity Johannes Schindelin via GitGitGadget 2019-05-21 17:50 ` [PATCH 1/2] rebase: replace incorrect logical negation by correct bitwise one Johannes Schindelin via GitGitGadget 2019-05-28 18:25 ` Junio C Hamano 2019-05-21 17:50 ` [PATCH 2/2] bisect--helper: verify HEAD could be parsed before continuing Johannes Schindelin via GitGitGadget
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.