diff --git a/src/disk/hdd.c b/src/disk/hdd.c index c4daf0f83..6135c31d8 100644 --- a/src/disk/hdd.c +++ b/src/disk/hdd.c @@ -161,6 +161,10 @@ hdd_seek_get_time(hard_disk_t *hdd, uint32_t dst_addr, uint8_t operation, uint8_ return HDD_OVERHEAD_TIME; hdd_zone_t *zone = NULL; + if (hdd->num_zones <= 0) { + fatal("hdd_seek_get_time(): hdd->num_zones < 0)\n"); + return 0.0; + } for (int i = 0; i < hdd->num_zones; i++) { zone = &hdd->zones[i]; if (zone->end_sector >= dst_addr)