Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1
parted
fix-corrupted-gpt-crash.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fix-corrupted-gpt-crash.patch of Package parted
# fixes (bnc#439910) # parted used to crash on corrupted gpt label - now warning is printed instead diff --git a/libparted/labels/gpt.c b/libparted/labels/gpt.c index 13d2e88..c20d729 100644 --- a/libparted/labels/gpt.c +++ b/libparted/labels/gpt.c @@ -824,8 +824,18 @@ gpt_read (PedDisk * disk) goto error; if (_read_header (disk->dev, &gpt, 1)) { - PED_ASSERT ((PedSector) PED_LE64_TO_CPU (gpt->AlternateLBA) - <= disk->dev->length - 1, goto error_free_gpt); + if ((PedSector) PED_LE64_TO_CPU (gpt->AlternateLBA) + > disk->dev->length - 1) { + if (ped_exception_throw ( + PED_EXCEPTION_WARNING, + PED_EXCEPTION_IGNORE_CANCEL, + _("The primary GPT table states that the backup GPT table is " + "located at the position that is beyond the end of the disk. " + "This means that the GPT structure is corrupted.")) + == PED_EXCEPTION_CANCEL) + goto error_free_gpt; + } + if ((PedSector) PED_LE64_TO_CPU (gpt->AlternateLBA) < disk->dev->length - 1) { char* zeros = ped_malloc (pth_get_size (disk->dev));
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor