Remove string_replace()
string_replace_at does almost the same and string_replace is only used once, where additionally string_replace_at would be the better choice.
This commit is contained in:
		
							parent
							
								
									b805273fb9
								
							
						
					
					
						commit
						d8d457f500
					
				
							
								
								
									
										12
									
								
								src/utils.c
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								src/utils.c
									
									
									
									
									
								
							| @ -44,16 +44,6 @@ char *string_replace_at(char *buf, int pos, int len, const char *repl) | ||||
|         return tmp; | ||||
| } | ||||
| 
 | ||||
| char *string_replace(const char *needle, const char *replacement, char *haystack) | ||||
| { | ||||
|         char *start; | ||||
|         start = strstr(haystack, needle); | ||||
|         if (!start) | ||||
|                 return haystack; | ||||
| 
 | ||||
|         return string_replace_at(haystack, (start - haystack), strlen(needle), replacement); | ||||
| } | ||||
| 
 | ||||
| char *string_replace_all(const char *needle, const char *replacement, char *haystack) | ||||
| { | ||||
|         char *start; | ||||
| @ -134,7 +124,7 @@ char *string_to_path(char *string) | ||||
|         if (string && STRN_EQ(string, "~/", 2)) { | ||||
|                 char *home = g_strconcat(getenv("HOME"), "/", NULL); | ||||
| 
 | ||||
|                 string = string_replace("~/", home, string); | ||||
|                 string = string_replace_at(string, 0, 2, home); | ||||
| 
 | ||||
|                 g_free(home); | ||||
|         } | ||||
|  | ||||
| @ -25,9 +25,6 @@ char *string_replace_all(const char *needle, const char *replacement, char *hays | ||||
| /* replace <len> characters with <repl> at position <pos> of the string <buf> */ | ||||
| char *string_replace_at(char *buf, int pos, int len, const char *repl); | ||||
| 
 | ||||
| /* replace needle with replacement in haystack */ | ||||
| char *string_replace(const char *needle, const char *replacement, char *haystack); | ||||
| 
 | ||||
| char *string_append(char *a, const char *b, const char *sep); | ||||
| 
 | ||||
| /* strip content between two delimiter characters (inplace) */ | ||||
|  | ||||
							
								
								
									
										23
									
								
								test/utils.c
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								test/utils.c
									
									
									
									
									
								
							| @ -48,28 +48,6 @@ TEST test_string_replace_all(void) | ||||
|         PASS(); | ||||
| } | ||||
| 
 | ||||
| TEST test_string_replace(void) | ||||
| { | ||||
|         char *text = malloc(128 * sizeof(char)); | ||||
|         strcpy(text, "aaaaa"); | ||||
|         ASSERT_STR_EQ("baaaa", (text = string_replace("a", "b", text)) ); | ||||
| 
 | ||||
|         strcpy(text, ""); | ||||
|         ASSERT_STR_EQ((text = string_replace("a", "b", text)), ""); | ||||
| 
 | ||||
|         strcpy(text, "Nothing to replace"); | ||||
|         ASSERT_STR_EQ((text = string_replace("z", "a", text)), "Nothing to replace"); | ||||
| 
 | ||||
|         strcpy(text, "Reverse this"); | ||||
|         ASSERT_STR_EQ("Reverse sith", (text = string_replace("this", "sith", text))); | ||||
| 
 | ||||
|         strcpy(text, "abcdabc"); | ||||
|         ASSERT_STR_EQ("xyzabcdabc", (text = string_replace("a", "xyza", text))); | ||||
| 
 | ||||
|         free(text); | ||||
|         PASS(); | ||||
| } | ||||
| 
 | ||||
| TEST test_string_append(void) | ||||
| { | ||||
|         char *exp; | ||||
| @ -202,7 +180,6 @@ SUITE(suite_utils) | ||||
| { | ||||
|         RUN_TEST(test_string_replace_char); | ||||
|         RUN_TEST(test_string_replace_all); | ||||
|         RUN_TEST(test_string_replace); | ||||
|         RUN_TEST(test_string_append); | ||||
|         RUN_TEST(test_string_strip_quotes); | ||||
|         RUN_TEST(test_string_strip_delimited); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Benedikt Heine
						Benedikt Heine