File libpartd-dasd-improve-flag-processing-for-DASD-LDL.patch of Package parted.14425

From 1545d6d4db29fa20f0c611786a094521e8974d4a Mon Sep 17 00:00:00 2001
From: Wang Dong <dongdwdw@linux.vnet.ibm.com>
Date: Fri, 24 Mar 2017 03:11:12 +0100
Subject: [PATCH] libpartd/dasd: improve flag processing for DASD-LDL

DASD-LDL does not support flag now, so all the flags are
unavailable to it.

Signed-off-by: Andre Wild <wild@linux.vnet.ibm.com>
Signed-off-by: Wang Dong <dongdwdw@linux.vnet.ibm.com>
Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
---
 libparted/labels/dasd.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

Index: parted-3.2/libparted/labels/dasd.c
===================================================================
--- parted-3.2.orig/libparted/labels/dasd.c
+++ parted-3.2/libparted/labels/dasd.c
@@ -788,10 +788,24 @@ dasd_partition_get_flag (const PedPartit
 	}
 }
 
+/*
+ * The DASD-LDL does not support flags now.
+ * So just return 0.
+*/
 static int
 dasd_partition_is_flag_available (const PedPartition* part,
                                   PedPartitionFlag flag)
 {
+	DasdDiskSpecific* disk_specific;
+	PED_ASSERT (part != NULL);
+	PED_ASSERT (part->disk != NULL);
+	PED_ASSERT (part->disk->disk_specific != NULL);
+
+	disk_specific = part->disk->disk_specific;
+
+	if (disk_specific->format_type == 1)
+		return 0;
+
 	switch (flag) {
 		case PED_PARTITION_SWAP:
 			return 1;
openSUSE Build Service is sponsored by