diff --git a/disk/part.c b/disk/part.c
index 13723f23b3113c74fa7b2590de65bf0d7d3c5a6b..f07a17feb8a0e5e03663d986754e346779efe0ad 100644
--- a/disk/part.c
+++ b/disk/part.c
@@ -84,7 +84,7 @@ block_dev_desc_t *get_dev(char* ifname, int dev)
 #ifdef CONFIG_NEEDS_MANUAL_RELOC
 	name += gd->reloc_off;
 #endif
-	while (name) {
+	while (drvr->name) {
 		name = drvr->name;
 		reloc_get_dev = drvr->get_dev;
 #ifdef CONFIG_NEEDS_MANUAL_RELOC