summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2016-10-06 21:53:12 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-10-06 21:53:12 (GMT)
commitf0798e6cdbf99515391242e20f8df495a14e9c22 (patch)
treede83eeb548197f6c2493a48a617b0f47e4d39a79 /contrib
parent578e6021c0819d7be1179e05e7ce0e6fdb2a01b7 (diff)
parent353d84c537485500989b190c5af93ad224264e2c (diff)
downloadgit-f0798e6cdbf99515391242e20f8df495a14e9c22.zip
git-f0798e6cdbf99515391242e20f8df495a14e9c22.tar.gz
git-f0798e6cdbf99515391242e20f8df495a14e9c22.tar.bz2
Merge branch 'rs/cocci'
Code clean-up with help from coccinelle tool continues. * rs/cocci: coccicheck: make transformation for strbuf_addf(sb, "...") more precise use strbuf_add_unique_abbrev() for adding short hashes, part 2 use strbuf_addstr() instead of strbuf_addf() with "%s", part 2 gitignore: ignore output files of coccicheck make target
Diffstat (limited to 'contrib')
-rw-r--r--contrib/coccinelle/.gitignore1
-rw-r--r--contrib/coccinelle/strbuf.cocci37
2 files changed, 37 insertions, 1 deletions
diff --git a/contrib/coccinelle/.gitignore b/contrib/coccinelle/.gitignore
new file mode 100644
index 0000000..d3f2964
--- /dev/null
+++ b/contrib/coccinelle/.gitignore
@@ -0,0 +1 @@
+*.patch*
diff --git a/contrib/coccinelle/strbuf.cocci b/contrib/coccinelle/strbuf.cocci
index 7932d48..63995f2 100644
--- a/contrib/coccinelle/strbuf.cocci
+++ b/contrib/coccinelle/strbuf.cocci
@@ -1,5 +1,40 @@
+@ strbuf_addf_with_format_only @
+expression E;
+constant fmt;
+@@
+ strbuf_addf(E,
+(
+ fmt
+|
+ _(fmt)
+)
+ );
+
+@ script:python @
+fmt << strbuf_addf_with_format_only.fmt;
+@@
+cocci.include_match("%" not in fmt)
+
+@ extends strbuf_addf_with_format_only @
+@@
+- strbuf_addf
++ strbuf_addstr
+ (E,
+(
+ fmt
+|
+ _(fmt)
+)
+ );
+
@@
expression E1, E2;
@@
-- strbuf_addf(E1, E2);
+- strbuf_addf(E1, "%s", E2);
+ strbuf_addstr(E1, E2);
+
+@@
+expression E1, E2, E3;
+@@
+- strbuf_addstr(E1, find_unique_abbrev(E2, E3));
++ strbuf_add_unique_abbrev(E1, E2, E3);