?
Danke für die Antwort, du hast mich in die richtige Richtung geschubst. Mit Zeile 67 hast du recht gehabt, das hab ich echt übersehen, ich hab deinen Rat befolgt und es komplett anderst gemacht. Zeile 65 -75 sieht nun so aus:
if(method == 1){
if(len_newString != len_oldString){
memmove((buffer + i + len_newString), (buffer + i + len_oldString), (len_buffer - i - len_oldString));
len_buffer += (len_newString - len_oldString);
}
memcpy((buffer + i), newString, len_newString);
i += (len_newString - 1);
}else{
i += (len_oldString - 1);
}
bei ehemals Zeile 69 gebe ich dir auch recht, insofern daß der Aufruf der Funktion String_ChangeString mit der falschen Länge erfolgte
falsch (Zeile 104):
anzahl = String_ChangeString(buffer2, string1, string2, real_lenght, strlen(string1), strlen(string2), 1);
dies sollte richtig sein (Zeile 104):
anzahl = String_ChangeString(buffer2, string1, string2, buffersize, strlen(string1), strlen(string2), 1);
ich glaube jetzt gehts, aber vieleicht findest du nochmals die Zeit drauf zu schauen.