sd-device: fix return codes on error

asprintf() does not set errno.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2015-05-20 23:44:46 -04:00
parent 925fbb9f80
commit 53fae771bc
2 changed files with 6 additions and 6 deletions
+3 -3
View File
@@ -764,9 +764,9 @@ static int parent_crawl_children(sd_device_enumerator *enumerator, const char *p
if (dent->d_type != DT_DIR)
continue;
k = asprintf(&child, "%s/%s", path, dent->d_name);
if (k < 0)
return -errno;
child = strjoin(path, "/", dent->d_name, NULL);
if (!child)
return -ENOMEM;
k = parent_add_child(enumerator, child);
if (k < 0)
+3 -3
View File
@@ -1193,12 +1193,12 @@ int device_get_id_filename(sd_device *device, const char **ret) {
streq(subsystem, "block") ? 'b' : 'c',
major(devnum), minor(devnum));
if (r < 0)
return -errno;
return -ENOMEM;
} else if (ifindex > 0) {
/* use netdev ifindex -- n3 */
r = asprintf(&id, "n%u", ifindex);
if (r < 0)
return -errno;
return -ENOMEM;
} else {
/* use $subsys:$sysname -- pci:0000:00:1f.2
* sysname() has '!' translated, get it from devpath
@@ -1211,7 +1211,7 @@ int device_get_id_filename(sd_device *device, const char **ret) {
r = asprintf(&id, "+%s:%s", subsystem, sysname);
if (r < 0)
return -errno;
return -ENOMEM;
}
device->id_filename = id;