--- hal-0.5.14/hald/device_info.c	2009-08-24 16:42:29.000000000 +0400
+++ hal-0.5.14-patched/hald/device_info.c	2013-05-13 14:14:37.920489034 +0400
@@ -1111,7 +1111,7 @@ rules_match_and_merge_device (void *fdi_
 				rule = di_jump(rule);
 
 				if(rule == NULL)
-					DIE(("Rule is NULL on jump"));
+					DIE(("fdi cache is broken, please try to rebuild!"));
 
 				continue;
 			}
@@ -1135,6 +1135,8 @@ rules_match_and_merge_device (void *fdi_
 		default:
 			HAL_WARNING(("Unhandled rule (%i)!", rule->rtype));
 			rule = di_jump(rule);
+			if(rule == NULL)
+				DIE(("fdi cache is broken, please try to rebuild!"));
 			break;
 		}
 		rule = di_next(rule);
