[utils] string_replace also creates a copy

This commit is contained in:
Al
2016-11-30 10:09:33 -08:00
parent 5a7e73e2a1
commit b639fa5127
3 changed files with 17 additions and 10 deletions

View File

@@ -80,10 +80,14 @@ inline void string_upper(char *s) {
for (; *s; ++s) *s = toupper(*s);
}
inline void string_replace(char *s, char c1, char c2) {
for (; *s; ++s) {
if (*s == c1) *s = c2;
inline char *string_replace(char *s, char c1, char c2) {
char *repl = strdup(s);
if (repl == NULL) return NULL;
char *ptr = repl;
for (; *ptr; ++ptr) {
if (*ptr == c1) *ptr = c2;
}
return repl;
}
inline bool string_is_upper(char *s) {