diff --git a/libretro-common/string/stdstring.c b/libretro-common/string/stdstring.c index 5632f44e48..544a4af660 100644 --- a/libretro-common/string/stdstring.c +++ b/libretro-common/string/stdstring.c @@ -61,47 +61,47 @@ char *string_to_lower(char *s) char *string_replace_substring(const char *in, const char *pattern, const char *replacement) { - size_t numhits; - size_t pattern_len; - size_t replacement_len; - const char * inat; - const char * inprev; - size_t outlen; - char* out; - char* outat; - - /* if either pattern or replacement is NULL, - * duplicate in and let caller handle it. */ - if (!pattern || !replacement) - return strdup(in); - - pattern_len = strlen(pattern); - replacement_len = strlen(replacement); - - numhits = 0; - inat = in; - while ((inat = strstr(inat, pattern))) - { - inat += pattern_len; - numhits++; - } - - outlen = strlen(in) - pattern_len*numhits + replacement_len*numhits; - out = malloc(outlen+1); - outat = out; - - inat = in; - inprev = in; - while ((inat = strstr(inat, pattern))) - { - memcpy(outat, inprev, inat-inprev); - outat += inat-inprev; - memcpy(outat, replacement, replacement_len); - outat += replacement_len; - inat += pattern_len; - inprev = inat; - } - strcpy(outat, inprev); - - return out; + size_t numhits; + size_t pattern_len; + size_t replacement_len; + const char *inat; + const char *inprev; + size_t outlen; + char *out; + char *outat; + + /* if either pattern or replacement is NULL, + * duplicate in and let caller handle it. */ + if (!pattern || !replacement) + return strdup(in); + + pattern_len = strlen(pattern); + replacement_len = strlen(replacement); + + numhits = 0; + inat = in; + while ((inat = strstr(inat, pattern))) + { + inat += pattern_len; + numhits++; + } + + outlen = strlen(in) - pattern_len*numhits + replacement_len*numhits; + out = (char *)malloc(outlen+1); + outat = out; + + inat = in; + inprev = in; + while ((inat = strstr(inat, pattern))) + { + memcpy(outat, inprev, inat-inprev); + outat += inat-inprev; + memcpy(outat, replacement, replacement_len); + outat += replacement_len; + inat += pattern_len; + inprev = inat; + } + strcpy(outat, inprev); + + return out; }