История изменений
Исправление Gvidon, (текущая версия) :
void process(const char *str, const char *substr, char *buffer, size_t bufferSize)
{
    char *ptr = buffer;
    size_t substrLength = strlen(substr);
    while (*str && (ptr - buffer < bufferSize - 1))
    {
        if (!strncmp(str, substr, substrLength))
            str += substrLength;
        *ptr++ = *str++;
    }
    *ptr = '\0';
}
Исходная версия Gvidon, :
void process(const char *str, const char *substr, char *buffer, size_t bufferSize)
{
    size_t i;
    char *ptr = buffer;
    size_t substrLength = strlen(substr);
    while (*str && (ptr - buffer < bufferSize - 1))
    {
        if (!strncmp(str, substr, substrLength))
            str += substrLength;
        *ptr++ = *str++;
    }
    *ptr = '\0';
}