diff options
author | Christophe Grenier <[email protected]> | 2008-08-05 09:36:46 +0200 |
---|---|---|
committer | Christophe Grenier <[email protected]> | 2008-08-05 09:36:46 +0200 |
commit | 594016c8562bdfabb8c9f4b6d82444f56b602130 (patch) | |
tree | 065cb966adf84c7a169b41f9b5a09b46d79d88fb /src | |
parent | f481d20f14f6cf8a70a68d52a99f7083680c7bb4 (diff) |
TestDisk: add hints to locate partition beginning at 0/1/1 even if the geometry is wrong
Diffstat (limited to 'src')
-rw-r--r-- | src/godmode.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/godmode.c b/src/godmode.c index 975cbcc6..cf79897e 100644 --- a/src/godmode.c +++ b/src/godmode.c @@ -381,7 +381,9 @@ static list_part_t *search_part(disk_t *disk_car, const list_part_t *list_part_o uint64_t search_location; unsigned int try_offset_nbr=0; unsigned int try_offset_raid_nbr=0; +#ifdef HAVE_NCURSES unsigned int old_cylinder=0; +#endif unsigned int location_boundary; int ind_stop=0; list_part_t *list_part=NULL; @@ -430,6 +432,9 @@ static list_part_t *search_part(disk_t *disk_car, const list_part_t *list_part_o /* sometimes users don't choose Vista by mistake */ try_offset_nbr=tab_insert(try_offset, 2048*512, try_offset_nbr); /* try to deal with incorrect geometry */ + /* 0/1/1 */ + try_offset_nbr=tab_insert(try_offset, 32 * disk_car->sector_size, try_offset_nbr); + try_offset_nbr=tab_insert(try_offset, 63 * disk_car->sector_size, try_offset_nbr); /* 1/[01]/1 CHS x 16 63 */ try_offset_nbr=tab_insert(try_offset, 16 * 63 * disk_car->sector_size, try_offset_nbr); try_offset_nbr=tab_insert(try_offset, 17 * 63 * disk_car->sector_size, try_offset_nbr); |