On Tue, 17.02.15 17:35, Cristian Rodríguez (crrodrig...@opensuse.org) wrote:

Please fix this for all arguments, not just symlinks.

> diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
> index c948d4d..1b35b8e 100644
> --- a/src/tmpfiles/tmpfiles.c
> +++ b/src/tmpfiles/tmpfiles.c
> @@ -1590,6 +1590,12 @@ static int parse_line(const char *fname, unsigned 
> line, const char *buffer) {
>                          i.argument = strappend("/usr/share/factory/", 
> i.path);
>                          if (!i.argument)
>                                  return log_oom();
> +                } else {
> +                    r = specifier_printf(i.argument,
> specifier_table, NULL, &i.argument);

Here's a memory leak, you need to free the old i.argument.

Indentation! Please have a look at CODING_STYLE. You need to indent by
8ch. 4ch indenting is not acceptable. 

> +                    if (r < 0) {
> +                        log_error("[%s:%u] Failed to replace specifiers: 
> %s", fname, line, path);
> +                        return r;
> +                    }

A good candidate for log_error_errno().

Lennart

-- 
Lennart Poettering, Red Hat
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to