1
0
Fork 0
forked from len0rd/rockbox

Accept both 0x0b and 0x0c as valid FAT32 partition types in the partition table

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14435 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Dave Chapman 2007-08-22 23:14:52 +00:00
parent 1c69293d91
commit ec3db3860e

View file

@ -317,7 +317,7 @@ static int sansa_seek_and_read(struct sansa_t* sansa, loff_t pos, unsigned char*
/* We identify an E200 based on the following criteria:
1) Exactly two partitions;
2) First partition is type "W95 FAT32" (0x0b);
2) First partition is type "W95 FAT32" (0x0b or 0x0c);
3) Second partition is type "OS/2 hidden C: drive" (0x84);
4) The "PPBL" string appears at offset 0 in the 2nd partition;
5) The "PPMI" string appears at offset PPMI_OFFSET in the 2nd partition.
@ -330,8 +330,10 @@ int is_e200(struct sansa_t* sansa)
/* Check partition layout */
if ((sansa->pinfo[0].type != 0x0b) || (sansa->pinfo[1].type != 0x84) ||
(sansa->pinfo[2].type != 0x00) || (sansa->pinfo[3].type != 0x00)) {
if (((sansa->pinfo[0].type != 0x0b) && (sansa->pinfo[0].type != 0x0c)) ||
(sansa->pinfo[1].type != 0x84) ||
(sansa->pinfo[2].type != 0x00) ||
(sansa->pinfo[3].type != 0x00)) {
/* Bad partition layout, abort */
return -1;
}