X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Funit-printf.c;h=97135db551aa2f1e7cc7f42c99f4562e2ac79a55;hb=4d2b1e0a3f98d8cf93beb943b05868b55231006a;hp=d16d856b516aa5e36bd84831a42ff45fbc801c5b;hpb=dca348bcbb462305864526c587495a14a76bfcde;p=elogind.git diff --git a/src/core/unit-printf.c b/src/core/unit-printf.c index d16d856b5..97135db55 100644 --- a/src/core/unit-printf.c +++ b/src/core/unit-printf.c @@ -19,7 +19,7 @@ along with systemd; If not, see . ***/ -#include "systemd/sd-id128.h" +#include "sd-id128.h" #include "unit.h" #include "specifier.h" #include "path-util.h" @@ -182,7 +182,7 @@ static int specifier_user_name(char specifier, void *data, void *userdata, char char *printed = NULL; Unit *u = userdata; ExecContext *c; - int r; + int r = 0; assert(u); @@ -208,7 +208,7 @@ static int specifier_user_name(char specifier, void *data, void *userdata, char if (r < 0) return -ENODATA; - asprintf(&printed, "%lu", (unsigned long) uid); + r = asprintf(&printed, UID_FMT, uid); } } @@ -231,10 +231,10 @@ static int specifier_user_name(char specifier, void *data, void *userdata, char if (specifier == 'u') printed = strdup(username); else - asprintf(&printed, "%lu", (unsigned long) uid); + r = asprintf(&printed, UID_FMT, uid); } - if (!printed) + if (r < 0 || !printed) return -ENOMEM; *ret = printed;