| 
					
				 | 
			
			
				@@ -1752,32 +1752,56 @@ test_util_strtok(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   char buf[128]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   char buf2[128]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  int i; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   char *cp1, *cp2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  strlcpy(buf, "Graved on the dark in gestures of descent", sizeof(buf)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  strlcpy(buf2, "they.seemed;their!own;most.perfect;monument", sizeof(buf2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  /*  -- "Year's End", Richard Wilbur */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("Graved", tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("they", tor_strtok_r_impl(buf2, ".!..;!", &cp2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  for (i = 0; i < 3; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const char *pad1, *pad2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    switch (i) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    case 0: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pad1 = pad2 = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    case 1: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pad1 = " "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pad2 = "!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    case 2: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pad1 = "  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pad2 = ";!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tor_snprintf(buf, sizeof(buf), "%s", pad1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tor_snprintf(buf2, sizeof(buf2), "%s", pad2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_assert(NULL == tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_assert(NULL == tor_strtok_r_impl(buf2, ".!..;!", &cp2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tor_snprintf(buf, sizeof(buf), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 "%sGraved on the dark  in gestures of descent%s", pad1, pad1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tor_snprintf(buf2, sizeof(buf2), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 "%sthey.seemed;;their!.own;most.perfect;monument%s",pad2,pad2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /*  -- "Year's End", Richard Wilbur */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("Graved", tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("they", tor_strtok_r_impl(buf2, ".!..;!", &cp2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #define S1() tor_strtok_r_impl(NULL, " ", &cp1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #define S2() tor_strtok_r_impl(NULL, ".!..;!", &cp2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("on", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("the", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("dark", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("seemed", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("their", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("own", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("in", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("gestures", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("of", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("most", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("perfect", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("descent", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq("monument", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_eq_ptr(NULL, S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_eq_ptr(NULL, S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("on", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("the", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("dark", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("seemed", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("their", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("own", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("in", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("gestures", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("of", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("most", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("perfect", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("descent", S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_streq("monument", S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_eq_ptr(NULL, S1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test_eq_ptr(NULL, S2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#if 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   buf[0] = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq_ptr(NULL, tor_strtok_r_impl(buf, "!", &cp1)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1790,12 +1814,10 @@ test_util_strtok(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   strlcpy(buf, "  ", sizeof(buf)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   strlcpy(buf, "something  ", sizeof(buf)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_streq("something", tor_strtok_r_impl(buf, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_streq(" ", tor_strtok_r_impl(NULL, ";", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  test_eq_ptr(NULL, tor_strtok_r_impl(NULL, " ", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  test_eq_ptr(NULL, tor_strtok_r_impl(NULL, ";", &cp1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  done: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |