[Parted-commits] GNU Parted Official Repository: Changes to 'master'
Jim Meyering
meyering at alioth.debian.org
Thu Mar 5 17:21:35 UTC 2009
libparted/labels/gpt.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
New commits:
commit b0998c56f256f2d3b6c53bea6f3af6e3fc9f262d
Author: Petr Uzel <petr.uzel at suse.cz>
Date: Thu Mar 5 16:52:20 2009 +0100
gpt: plug a memory leak in gpt_read()
* libparted/labels/gpt.c (gpt_read): Free local variable, "zeros".
diff --git a/libparted/labels/gpt.c b/libparted/labels/gpt.c
index be8f264..cc03b0b 100644
--- a/libparted/labels/gpt.c
+++ b/libparted/labels/gpt.c
@@ -833,7 +833,6 @@ gpt_read (PedDisk * disk)
if ((PedSector) PED_LE64_TO_CPU (gpt->AlternateLBA)
< disk->dev->length - 1) {
- char* zeros = ped_malloc (pth_get_size (disk->dev));
#ifndef DISCOVER_ONLY
switch (ped_exception_throw (
@@ -846,11 +845,16 @@ gpt_read (PedDisk * disk)
case PED_EXCEPTION_CANCEL:
goto error_free_gpt;
case PED_EXCEPTION_FIX:
+ {
+ char *zeros =
+ ped_malloc (pth_get_size (disk->dev));
write_back = 1;
memset (zeros, 0, disk->dev->sector_size);
ped_device_write (disk->dev, zeros,
PED_LE64_TO_CPU (gpt->AlternateLBA),
1);
+ free (zeros);
+ }
break;
default:
break;
More information about the Parted-commits
mailing list