From 9c96e621e9abb0649118d2e1731a09b1fa139579 Mon Sep 17 00:00:00 2001 From: Vojtech Trefny Date: Wed, 19 Apr 2023 09:50:38 +0200 Subject: [PATCH] part: Fix segfault when adding a partition too big for MSDOS Resolves: rhbz#2185564 --- src/plugins/part.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/plugins/part.c b/src/plugins/part.c index 8b2285f5..28e20c28 100644 --- a/src/plugins/part.c +++ b/src/plugins/part.c @@ -841,6 +841,14 @@ static gboolean resize_part (PedPartition *part, PedDevice *dev, PedDisk *disk, constr = ped_constraint_any (dev); geom = ped_disk_get_max_partition_geometry (disk, part, constr); + if (!geom) { + set_parted_error (error, BD_PART_ERROR_FAIL); + g_prefix_error (error, "Failed to create geometry for partition on device '%s'", dev->path); + ped_constraint_destroy (constr); + finish_alignment_constraint (disk, orig_flag_state); + return FALSE; + } + if (!ped_geometry_set_start (geom, start)) { set_parted_error (error, BD_PART_ERROR_FAIL); g_prefix_error (error, "Failed to set partition start on device '%s'", dev->path); -- 2.40.1