From 3ffe330ef2bb6d5ba29a7e700056354e81b847e7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 10 May 2018 01:34:33 +0200 Subject: [PATCH] logind: fix borked r check CID #1390947, #1390952. --- src/login/logind.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/login/logind.c b/src/login/logind.c index dfd657de7..aba93fd15 100644 --- a/src/login/logind.c +++ b/src/login/logind.c @@ -416,14 +416,18 @@ static int parse_fdname(const char *fdname, char **session_id, dev_t *dev) { if (!streq(parts[0], "session")) return -EINVAL; + id = strdup(parts[1]); if (!id) return -ENOMEM; if (!streq(parts[2], "device")) return -EINVAL; - r = safe_atou(parts[3], &major) || - safe_atou(parts[4], &minor); + + r = safe_atou(parts[3], &major); + if (r < 0) + return r; + r = safe_atou(parts[4], &minor); if (r < 0) return r; -- 2.30.2