A cgroup file returns integer value terminated with '\n' and remaining
it has sometimes harmful effects, for example it leads virStrToLong_ull
to fail.
* src/util/cgroup.c: strip out terminating \n when reading a value
DEBUG("Failed to read %s: %m\n", keypath);
rc = -errno;
} else {
+ /* Terminated with '\n' has sometimes harmful effects to the caller */
+ char *p = strchr(*value, '\n');
+ if (p) *p = '\0';
+
rc = 0;
}
int virCgroupGetFreezerState(virCgroupPtr group, char **state)
{
- int ret;
- ret = virCgroupGetValueStr(group,
+ return virCgroupGetValueStr(group,
VIR_CGROUP_CONTROLLER_CPU,
"freezer.state", state);
- if (ret == 0) {
- char *p = strchr(*state, '\n');
- if (p) *p = '\0';
- }
- return ret;
}