chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Prep v231.6: Fix pam_elogind to not falter when elogind is not running, yet.
[elogind.git]
/
src
/
basic
/
env-util.c
diff --git
a/src/basic/env-util.c
b/src/basic/env-util.c
index c41d9dad86ad0e419cb8899436d9625db67486f9..47c1fccd3b07eaabd65bdd02096168bbb7bf4307 100644
(file)
--- a/
src/basic/env-util.c
+++ b/
src/basic/env-util.c
@@
-248,7
+248,7
@@
fail:
return NULL;
}
return NULL;
}
-S
+
static bool env_match(const char *t, const char *pattern) {
assert(t);
assert(pattern);
static bool env_match(const char *t, const char *pattern) {
assert(t);
assert(pattern);
@@
-780,7
+780,7
@@
int serialize_environment(FILE *f, char **environment) {
if (!ce)
return -ENOMEM;
if (!ce)
return -ENOMEM;
- fprintf(f, "env=%s\n",
*
e);
+ fprintf(f, "env=%s\n",
c
e);
}
/* caller should call ferror() */
}
/* caller should call ferror() */
@@
-789,7
+789,7
@@
int serialize_environment(FILE *f, char **environment) {
}
int deserialize_environment(char ***environment, const char *line) {
}
int deserialize_environment(char ***environment, const char *line) {
- char *uce
= NULL
;
+ char *uce;
int r;
assert(line);
int r;
assert(line);
@@
-800,8
+800,10
@@
int deserialize_environment(char ***environment, const char *line) {
if (r < 0)
return r;
if (r < 0)
return r;
- if (!env_assignment_is_valid(uce))
+ if (!env_assignment_is_valid(uce)) {
+ free(uce);
return -EINVAL;
return -EINVAL;
+ }
return strv_env_replace(environment, uce);
}
return strv_env_replace(environment, uce);
}