GNU bug report logs - #22920
[PATCH] libparted/disk.c(ped_disk_get_partition): Fix assert error

Previous Next

Package: parted;

Reported by: lu4nx <lx <at> shellcodes.org>

Date: Sun, 6 Mar 2016 06:49:02 UTC

Severity: normal

Tags: patch

Done: Phillip Susi <psusi <at> ubuntu.com>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: lu4nx <lx <at> shellcodes.org>
To: bug-parted <at> gnu.org
Cc: Xi Lu <lx <at> shellcodes.org>
Subject: [PATCH] libparted/disk.c(ped_disk_get_partition): Fix assert error
Date: Sun,  6 Mar 2016 14:48:27 +0800
From: Xi Lu <lx <at> shellcodes.org>

if forget create a partition, and execute:

`name 1 grub`

ped_disk_get_partition() will trigger an exception:

  Assertion (disk != NULL)
---
 libparted/disk.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libparted/disk.c b/libparted/disk.c
index fe82f44..9f36d10 100644
--- a/libparted/disk.c
+++ b/libparted/disk.c
@@ -1594,7 +1594,10 @@ ped_disk_get_partition (const PedDisk* disk, int num)
 {
 	PedPartition*	walk;
 
-	PED_ASSERT (disk != NULL);
+        if (disk == NULL) {
+          fprintf(stderr, "you must specify partition.");
+          return NULL;
+        }
 
 	for (walk = disk->part_list; walk;
 	     walk = ped_disk_next_partition (disk, walk)) {
-- 
2.5.0







This bug report was last modified 9 years and 98 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.