chiark / gitweb /
Add __attribute__((const, pure, format)) in various places
[elogind.git] / src / shared / env-util.c
index 54988e6437fe2a942b0294b906dfcb9e51b5e18e..6a52fb960d0e8df25791b66e6375263b8bc7c353 100644 (file)
@@ -227,7 +227,7 @@ fail:
         return NULL;
 }
 
-static bool env_match(const char *t, const char *pattern) {
+_pure_ static bool env_match(const char *t, const char *pattern) {
         assert(t);
         assert(pattern);
 
@@ -376,7 +376,7 @@ char *strv_env_get(char **l, const char *name) {
         return strv_env_get_n(l, name, strlen(name));
 }
 
-char **strv_env_clean(char **e) {
+char **strv_env_clean_log(char **e, const char *message) {
         char **p, **q;
         int k = 0;
 
@@ -385,6 +385,8 @@ char **strv_env_clean(char **e) {
                 bool duplicate = false;
 
                 if (!env_assignment_is_valid(*p)) {
+                        if (message)
+                                log_error("Ignoring invalid environment '%s': %s", *p, message);
                         free(*p);
                         continue;
                 }
@@ -407,3 +409,7 @@ char **strv_env_clean(char **e) {
         e[k] = NULL;
         return e;
 }
+
+char **strv_env_clean(char **e) {
+        return strv_env_clean_log(e, NULL);
+}