str_remove gibt den speicher nicht frei

Posted By: Samb

str_remove gibt den speicher nicht frei - 07/22/07 18:04

str_remove gibt den speicher nicht frei (je öfter str_create und remove angewendet wird, desto mehr speicher verbraucht die engine) und entfernt auch nicht die handles.
obwohl der string entfernt wurde, gibt es keine fehler wenn man auf ihn zugreifen möchte.
entweder ist der string leer oder inhält eine kurze zeichenfolge.

die strings werden in einer lokalen variable erstellt. könnte das den fehler verursachen?

der code:

Code:
function Server_Login_Event(vTyp, sMsg,vSender, vReceiver)
{
var acc_str;
var pass_str;
acc_str = str_create("#100");
pass_str = str_create("#100");
[...]
str_remove(acc_str); // lösche die strings
str_remove(pass_str); // lösche die strings
}


Posted By: jcl

Re: str_remove gibt den speicher nicht frei - 07/23/07 06:50

Nein, die lokale Variable kann hier keinen Fehler verursachen. Stellen Sie aber sicher, dass die Funktion nicht im Mittelteil enden kann und die str_remove Funktionen tatsächlich stets ausgeführt werden. - Ein Problem mit der Speicherfreigabe kann ich nicht bestätigen, aber "handles entfernt" (was immer das bedeuten mag) eine remove-Funktion nicht.
© 2024 lite-C Forums