diff options
author | Costa Tsaousis (ktsaou) <costa@tsaousis.gr> | 2016-04-26 20:06:25 +0300 |
---|---|---|
committer | Costa Tsaousis (ktsaou) <costa@tsaousis.gr> | 2016-04-26 20:06:25 +0300 |
commit | d0c6ead065849d8384ad70fec1c199581538cdb0 (patch) | |
tree | 96257428ea736eb2dd7825ef8b0fef5bdd8ca32f /src/sys_fs_cgroup.c | |
parent | 1a66599dc79a58bf5754bb38004c3abddbd8d0c3 (diff) |
fix memory leack in cgroups
Diffstat (limited to 'src/sys_fs_cgroup.c')
-rw-r--r-- | src/sys_fs_cgroup.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/sys_fs_cgroup.c b/src/sys_fs_cgroup.c index d8d6ef0522..b09af5246a 100644 --- a/src/sys_fs_cgroup.c +++ b/src/sys_fs_cgroup.c @@ -241,12 +241,13 @@ void cgroup_read_cpuacct_usage(struct cpuacct_usage *ca) { if(i != ca->cpus) { free(ca->cpu_percpu); - } - ca->cpu_percpu = malloc(sizeof(unsigned long long) * i); - if(!ca->cpu_percpu) - fatal("Cannot allocate memory (%z bytes)", sizeof(unsigned long long) * i); - ca->cpus = i; + ca->cpu_percpu = malloc(sizeof(unsigned long long) * i); + if(!ca->cpu_percpu) + fatal("Cannot allocate memory (%z bytes)", sizeof(unsigned long long) * i); + + ca->cpus = i; + } for(i = 0; i < ca->cpus ;i++) { ca->cpu_percpu[i] = strtoull(procfile_lineword(ff, 0, i), NULL, 10); |