summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristophe Grenier <[email protected]>2008-08-05 09:36:46 +0200
committerChristophe Grenier <[email protected]>2008-08-05 09:36:46 +0200
commit594016c8562bdfabb8c9f4b6d82444f56b602130 (patch)
tree065cb966adf84c7a169b41f9b5a09b46d79d88fb /src
parentf481d20f14f6cf8a70a68d52a99f7083680c7bb4 (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.c5
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);