diff options
author | Dave Chapman <dave@dchapman.com> | 2007-08-22 23:14:52 +0000 |
---|---|---|
committer | Dave Chapman <dave@dchapman.com> | 2007-08-22 23:14:52 +0000 |
commit | ec3db3860e0a604fa27d294e4fece87a24766df0 (patch) | |
tree | 6d0668616ed6a0d44574e5cc0d918f579ae55096 /rbutil/sansapatcher/sansapatcher.c | |
parent | 1c69293d915ff9252d635764a954712417016eab (diff) | |
download | rockbox-ec3db3860e0a604fa27d294e4fece87a24766df0.tar.gz rockbox-ec3db3860e0a604fa27d294e4fece87a24766df0.zip |
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
Diffstat (limited to 'rbutil/sansapatcher/sansapatcher.c')
-rw-r--r-- | rbutil/sansapatcher/sansapatcher.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/rbutil/sansapatcher/sansapatcher.c b/rbutil/sansapatcher/sansapatcher.c index 6b4b80896c..087160146e 100644 --- a/rbutil/sansapatcher/sansapatcher.c +++ b/rbutil/sansapatcher/sansapatcher.c @@ -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; } |