target/i386: Fix memory leak in sev_read_file_base64()
In sev_read_file_base64() we call g_file_get_contents(), which allocates memory for the file contents. We then base64-decode the contents (which allocates another buffer for the decoded data), but forgot to free the memory for the original file data. Use g_autofree to ensure that the file data is freed. Fixes: Coverity CID 1459997 Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20210820165650.2839-1-peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
809954efc2
commit
523a3d9524
@ -565,7 +565,7 @@ static int
|
|||||||
sev_read_file_base64(const char *filename, guchar **data, gsize *len)
|
sev_read_file_base64(const char *filename, guchar **data, gsize *len)
|
||||||
{
|
{
|
||||||
gsize sz;
|
gsize sz;
|
||||||
gchar *base64;
|
g_autofree gchar *base64 = NULL;
|
||||||
GError *error = NULL;
|
GError *error = NULL;
|
||||||
|
|
||||||
if (!g_file_get_contents(filename, &base64, &sz, &error)) {
|
if (!g_file_get_contents(filename, &base64, &sz, &error)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user