From 138e7f56c776b65a893b1a3ed946915a2bb0105d Mon Sep 17 00:00:00 2001 From: Philippe De Muyter Date: Wed, 27 Feb 2013 17:05:16 -0800 Subject: [PATCH] --- yaml --- r: 359392 b: refs/heads/master c: 86ee8ba64daf5e09a71e4c216f81fae8d1c937f3 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/block/partitions/msdos.c | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 8d80b38f1153..a45eaf93b9cf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3c94ce6f48f484bbc4dba83c0ed1f98f5e10957c +refs/heads/master: 86ee8ba64daf5e09a71e4c216f81fae8d1c937f3 diff --git a/trunk/block/partitions/msdos.c b/trunk/block/partitions/msdos.c index 8752a5d26565..7681cd295ab8 100644 --- a/trunk/block/partitions/msdos.c +++ b/trunk/block/partitions/msdos.c @@ -455,14 +455,19 @@ int msdos_partition(struct parsed_partitions *state) data = read_part_sector(state, 0, §); if (!data) return -1; - if (!msdos_magic_present(data + 510)) { + + /* + * Note order! (some AIX disks, e.g. unbootable kind, + * have no MSDOS 55aa) + */ + if (aix_magic_present(state, data)) { put_dev_sector(sect); + strlcat(state->pp_buf, " [AIX]", PAGE_SIZE); return 0; } - if (aix_magic_present(state, data)) { + if (!msdos_magic_present(data + 510)) { put_dev_sector(sect); - strlcat(state->pp_buf, " [AIX]", PAGE_SIZE); return 0; }