]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
coccinelle: skip the empty-to-null transformation on the macro itself 26192/head
authorFrantisek Sumsal <frantisek@sumsal.cz>
Wed, 25 Jan 2023 10:35:06 +0000 (11:35 +0100)
committerFrantisek Sumsal <frantisek@sumsal.cz>
Wed, 25 Jan 2023 10:35:06 +0000 (11:35 +0100)
Since the empty_to_null() function was "macrofied", we need to use a bit
of black magic to make Coccinelle avoid running the transformation on
the macro itself.

Follow-up to ef2409cbde3.

coccinelle/empty-to-null.cocci

index 1cc89475a6f055f4661f1858dce5749cb197c489..82819e9e3c94b30fd9f03ee9c2d7755010238098 100644 (file)
@@ -1,7 +1,11 @@
 /* SPDX-License-Identifier: LGPL-2.1-or-later */
 @@
-/* Avoid running this transformation on the empty_to_null function itself */
-position p : script:python() { p[0].current_element != "empty_to_null" };
+/* Avoid running this transformation on the empty_to_null macro itself.
+ * See the note in strempty.cocci to understand the weird magic below.
+*/
+position p : script:python() {
+        not (p[0].file == "src/basic/string-util.h" and p[0].current_element == "something_else")
+};
 expression s;
 @@