Currently on the error exit path the allocated buffer is not free'd
causing a memory leak. Fix this by kfree'ing it.
Detected by CoverityScan, CID#
1466876 ("Resource leaks")
Fixes: 1180b4c757aa ("apparmor: fix dangling symlinks to policy rawdata after replacement")
Signed-off-by: Colin Ian King <[email protected]>
Signed-off-by: John Johansen <[email protected]>
}
error = snprintf(s, size, "raw_data/%s/%s", dirname, fname);
- if (error >= size || error < 0)
+ if (error >= size || error < 0) {
+ kfree(buffer);
return ERR_PTR(-ENAMETOOLONG);
+ }
return buffer;
}