73aa139585
- libparted: Fix bug with dupe and empty name
46 lines
1.6 KiB
Diff
46 lines
1.6 KiB
Diff
From 7feb3b452c5ae57e75e16f8c00f46c9aa564a4cc Mon Sep 17 00:00:00 2001
|
|
From: Phillip Susi <psusi@ubuntu.com>
|
|
Date: Sun, 27 Apr 2014 11:15:47 -0400
|
|
Subject: [PATCH 109/131] libparted: don't create partition on loop label
|
|
|
|
The loop label represents an unpartitioned disk, but creates
|
|
a dummy partition to represent the whole disk. This dummy partition
|
|
was actually being loaded into the kernel. Don't do that.
|
|
---
|
|
NEWS | 4 ++++
|
|
libparted/arch/linux.c | 3 +++
|
|
2 files changed, 7 insertions(+)
|
|
|
|
diff --git a/NEWS b/NEWS
|
|
index 8ec11ab..7d7edd8 100644
|
|
--- a/NEWS
|
|
+++ b/NEWS
|
|
@@ -29,6 +29,10 @@ GNU parted NEWS -*- outline -*-
|
|
|
|
** Bug Fixes
|
|
|
|
+ libparted: The loop label represents an unpartitioned disk, but creates
|
|
+ a dummy partition to represent the whole disk. This dummy partition
|
|
+ was actually being loaded into the kernel. Don't do that.
|
|
+
|
|
libparted: fix loop labels to not vanish if you don't create
|
|
a filesystem, and to not return an error syncing when you do.
|
|
|
|
diff --git a/libparted/arch/linux.c b/libparted/arch/linux.c
|
|
index 4cbe49b..9ae6d64 100644
|
|
--- a/libparted/arch/linux.c
|
|
+++ b/libparted/arch/linux.c
|
|
@@ -2883,6 +2883,9 @@ _disk_sync_part_table (PedDisk* disk)
|
|
lpn = PED_MIN(lpn, part_range);
|
|
else
|
|
lpn = part_range;
|
|
+ /* don't actually add partitions for loop */
|
|
+ if (strcmp (disk->type->name, "loop") == 0)
|
|
+ lpn = 0;
|
|
for (i = 1; i <= lpn; i++) {
|
|
PedPartition *part = ped_disk_get_partition (disk, i);
|
|
if (!part)
|
|
--
|
|
1.9.3
|
|
|