core/dbus-execute: propagate oom in property_get_cpu_affinity

The function already returns errors, so I'm not sure why we ignored
the error in the second call, potentially leaving variables unitialized.
It seems easiest to propagate the error.

Reported by qarmin (Rafał Mikrut).
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2026-05-18 12:29:12 +02:00
parent 92e0c920c7
commit e305f552ec
+4 -3
View File
@@ -123,19 +123,20 @@ static int property_get_cpu_affinity(
_cleanup_(cpu_set_done) CPUSet s = {};
_cleanup_free_ uint8_t *array = NULL;
size_t allocated;
int r;
assert(bus);
assert(reply);
if (c->cpu_affinity_from_numa) {
int r;
r = numa_to_cpu_set(&c->numa_policy, &s);
if (r < 0)
return r;
}
(void) cpu_set_to_dbus(c->cpu_affinity_from_numa ? &s : &c->cpu_set, &array, &allocated);
r = cpu_set_to_dbus(c->cpu_affinity_from_numa ? &s : &c->cpu_set, &array, &allocated);
if (r < 0)
return r;
return sd_bus_message_append_array(reply, 'y', array, allocated);
}