From: Vladimir 'phcoder' Serbinenko Date: Tue, 25 Oct 2011 16:01:57 +0000 (+0200) Subject: * grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak. X-Git-Tag: 2.00~1066 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9f326fba96eb04658e7720585e8ad9c643631ced;p=thirdparty%2Fgrub.git * grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak. --- diff --git a/ChangeLog b/ChangeLog index 1b1975215..7eef0f796 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2011-10-25 Vladimir Serbinenko + + * grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak. + 2011-10-25 Vladimir Serbinenko * grub-core/fs/romfs.c (grub_romfs_open): Add missing return. diff --git a/grub-core/kern/disk.c b/grub-core/kern/disk.c index f296b9d0f..460d8778f 100644 --- a/grub-core/kern/disk.c +++ b/grub-core/kern/disk.c @@ -442,6 +442,7 @@ grub_disk_read_small (grub_disk_t disk, grub_disk_addr_t sector, } } + grub_free (tmp_buf); grub_errno = GRUB_ERR_NONE; { @@ -468,9 +469,11 @@ grub_disk_read_small (grub_disk_t disk, grub_disk_addr_t sector, grub_error_push (); grub_dprintf ("disk", "%s read failed\n", disk->name); grub_error_pop (); + grub_free (tmp_buf); return grub_errno; } grub_memcpy (buf, tmp_buf + offset, size); + grub_free (tmp_buf); return GRUB_ERR_NONE; } }