summaryrefslogtreecommitdiff
path: root/src/shared/util.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-02-11 18:50:38 +0100
committerLennart Poettering <lennart@poettering.net>2015-02-11 18:50:38 +0100
commiteef46c372f64f40dd75415b2c504c73138719c8d (patch)
treed13d0d3b02025f837ccc360e2e6adc259d61ec9a /src/shared/util.c
parente89fe484df6b94fcd775b923327b54eaf0a116e2 (diff)
tree-wide: whenever we include libgen.h, immediately undefine basename()
Also, document in adjacent comments and in CODING_STYLE why we do that.
Diffstat (limited to 'src/shared/util.c')
-rw-r--r--src/shared/util.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/shared/util.c b/src/shared/util.c
index c53f9cdb6..f5fcebebe 100644
--- a/src/shared/util.c
+++ b/src/shared/util.c
@@ -60,10 +60,14 @@
#include <locale.h>
#include <sys/personality.h>
#include <sys/xattr.h>
-#include <libgen.h>
#include <sys/statvfs.h>
#include <sys/file.h>
#include <linux/fs.h>
+
+/* When we include libgen.h because we need dirname() we immediately
+ * undefine basename() since libgen.h defines it as a macro to the XDG
+ * version which is really broken. */
+#include <libgen.h>
#undef basename
#ifdef HAVE_SYS_AUXV_H