Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--diffcore-pickaxe.c5
-rwxr-xr-xt/t4209-log-pickaxe.sh5
2 files changed, 9 insertions, 1 deletions
diff --git a/diffcore-pickaxe.c b/diffcore-pickaxe.c
index 401eb72c61..cb758515ec 100644
--- a/diffcore-pickaxe.c
+++ b/diffcore-pickaxe.c
@@ -237,7 +237,10 @@ static void diffcore_pickaxe_count(struct diff_options *o)
if (opts & DIFF_PICKAXE_REGEX) {
int err;
- err = regcomp(&regex, needle, REG_EXTENDED | REG_NEWLINE);
+ int cflags = REG_EXTENDED | REG_NEWLINE;
+ if (DIFF_OPT_TST(o, PICKAXE_IGNORE_CASE))
+ cflags |= REG_ICASE;
+ err = regcomp(&regex, needle, cflags);
if (err) {
/* The POSIX.2 people are surely sick */
char errbuf[1024];
diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh
index 138118add1..844df760f7 100755
--- a/t/t4209-log-pickaxe.sh
+++ b/t/t4209-log-pickaxe.sh
@@ -88,6 +88,11 @@ test_log expect_second -S Picked
test_log_icase expect_second -S picked
test_log_icase expect_nomatch -S pickle
+test_log expect_nomatch -S p.cked --pickaxe-regex
+test_log expect_second -S P.cked --pickaxe-regex
+test_log_icase expect_second -S p.cked --pickaxe-regex
+test_log_icase expect_nomatch -S p.ckle --pickaxe-regex
+
test_expect_success 'log -S --textconv (missing textconv tool)' '
echo "* diff=test" >.gitattributes &&
test_must_fail git -c diff.test.textconv=missing log -Sfoo &&