| 
					
				 | 
			
			
				@@ -621,6 +621,8 @@ directory_remove_invalid(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   int changed = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   routerlist_t *rl = router_get_routerlist(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  routerlist_assert_ok(rl); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   for (i = 0; i < smartlist_len(rl->routers); ++i) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const char *msg; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     routerinfo_t *ent = smartlist_get(rl->routers, i); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -630,6 +632,7 @@ directory_remove_invalid(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ent->nickname, msg?msg:""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       routerlist_remove(rl, ent, i--, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       changed = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (bool_neq((r & FP_NAMED), ent->is_named)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       log_info(LD_DIRSERV, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -653,6 +656,8 @@ directory_remove_invalid(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if (changed) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     directory_set_dirty(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  routerlist_assert_ok(rl); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** Write a list of unregistered descriptors into a newly allocated 
			 |