From 443f3cffeef13c6ca71f79822f0918600bc6187d Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Tue, 7 Apr 2015 15:20:54 +0200 Subject: [PATCH 1/1] bus: use free_and_strdup() Save some LOCs by replacing strdup()+error-handling+free+assign with free_and_strdup(). --- src/libelogind/sd-bus/bus-util.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/libelogind/sd-bus/bus-util.c b/src/libelogind/sd-bus/bus-util.c index 4bc16aa90..78ef289eb 100644 --- a/src/libelogind/sd-bus/bus-util.c +++ b/src/libelogind/sd-bus/bus-util.c @@ -958,7 +958,6 @@ static int map_basic(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_ switch (type) { case SD_BUS_TYPE_STRING: { const char *s; - char *str; char **p = userdata; r = sd_bus_message_read_basic(m, type, &s); @@ -968,14 +967,7 @@ static int map_basic(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_ if (isempty(s)) break; - str = strdup(s); - if (!str) { - r = -ENOMEM; - break; - } - free(*p); - *p = str; - + r = free_and_strdup(p, s); break; } -- 2.30.2