From 33bf1b1ab0e14453e67e94dc6aa679dcdcce56e8 Mon Sep 17 00:00:00 2001 From: Eoin Coffey Date: Wed, 28 May 2014 09:40:08 -0600 Subject: [PATCH] examples/log.c: invert filtering impl and conditional --- examples/log.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/examples/log.c b/examples/log.c index 965f854d7..d5f75a297 100644 --- a/examples/log.c +++ b/examples/log.c @@ -67,8 +67,8 @@ static void print_commit(git_commit *commit); static int match_with_parent(git_commit *commit, int i, git_diff_options *); /** utility functions for filtering */ -static int signature_does_not_match(const git_signature *sig, const char *filter); -static int log_message_does_not_match(const git_commit *commit, const char *filter); +static int signature_matches(const git_signature *sig, const char *filter); +static int log_message_matches(const git_commit *commit, const char *filter); int main(int argc, char *argv[]) { @@ -132,13 +132,13 @@ int main(int argc, char *argv[]) continue; } - if (signature_does_not_match(git_commit_author(commit), opt.author)) + if (!signature_matches(git_commit_author(commit), opt.author)) continue; - if (signature_does_not_match(git_commit_committer(commit), opt.committer)) + if (!signature_matches(git_commit_committer(commit), opt.committer)) continue; - if (log_message_does_not_match(commit, opt.grep)) + if (!log_message_matches(commit, opt.grep)) continue; if (count++ < opt.skip) @@ -186,26 +186,26 @@ int main(int argc, char *argv[]) } /** Determine if the given git_signature does not contain the filter text. */ -static int signature_does_not_match(const git_signature *sig, const char *filter) { +static int signature_matches(const git_signature *sig, const char *filter) { if (filter == NULL) - return 0; + return 1; - if (sig == NULL || - (strstr(sig->name, filter) == NULL && - strstr(sig->email, filter) == NULL)) + if (sig != NULL && + (strstr(sig->name, filter) != NULL || + strstr(sig->email, filter) != NULL)) return 1; return 0; } -static int log_message_does_not_match(const git_commit *commit, const char *filter) { +static int log_message_matches(const git_commit *commit, const char *filter) { const char *message = NULL; if (filter == NULL) - return 0; + return 1; - if ((message = git_commit_message(commit)) == NULL || - strstr(message, filter) == NULL) + if ((message = git_commit_message(commit)) != NULL && + strstr(message, filter) != NULL) return 1; return 0;