argus Portal
Freund/in des Forums
Hallo, tut mir leid für eine etwas unscharfe Frage ;-)
Ich habe ein Problem mit einem Script, das ich nur
grob umschreiben kann und wo es bei Antworten im Grunde
nur um Erfahrungswerte gehen kann. Den Quellcode kann ich
hier nicht zeigen, da er zu komplex ist und ausserdem
Teil eines Projektes ist, der nicht unbedingt öffentlich
sein muss ;-)
Ich arbeite mit Strings. Einige sind global angelegt,
andere lokal in diversen Funktionen. Ich rufe in Funktionen
weitere Funktionen auf, wobei ich die lokalen Strings als
Zwischenresultate in Form der Rückgabewerte weiterreiche.
Bearbeitet werden die Strings mit llGetSubString,
llDeleteSubString und llInsertString. Das Schema
einer "Verarbeitungskette" ist immer dasselbe. Aber
zuverlässig läuft es nur das erste Mal. Danach wird
es unzuverlässig. Es scheint, das bestimmte Daten
nicht mehr richtig gelesen werden. Es ist zu "99%iger"
Sicherheit kein Programmierfehler.
Meine Frage: Ist jemandem schon einmal ein unerklärliches
Verhalten eines Scriptes aufgefallen, das eigentlich nur
an fehlerhafter Speicherverwaltung in LSL liegen kann?
Das also LSL z.B. lokale und globale Strings, wenn sie wie
im vorliegenden Fall ziemlich oft hin und hergeschoben werden,
verfremdet?
Mit diversen Debugausgaben habe ich Stringlängen und
Zwischenresultate geprüft. Ich kann keinen Fehler finden.
Bevor ich aufwändigere Prüfungen vornehme, frage ich lieber
erstmal hier und spare evtl. Zeit und muss evtl. einen anderen
Weg gehen.
Ich habe ein Problem mit einem Script, das ich nur
grob umschreiben kann und wo es bei Antworten im Grunde
nur um Erfahrungswerte gehen kann. Den Quellcode kann ich
hier nicht zeigen, da er zu komplex ist und ausserdem
Teil eines Projektes ist, der nicht unbedingt öffentlich
sein muss ;-)
Ich arbeite mit Strings. Einige sind global angelegt,
andere lokal in diversen Funktionen. Ich rufe in Funktionen
weitere Funktionen auf, wobei ich die lokalen Strings als
Zwischenresultate in Form der Rückgabewerte weiterreiche.
Bearbeitet werden die Strings mit llGetSubString,
llDeleteSubString und llInsertString. Das Schema
einer "Verarbeitungskette" ist immer dasselbe. Aber
zuverlässig läuft es nur das erste Mal. Danach wird
es unzuverlässig. Es scheint, das bestimmte Daten
nicht mehr richtig gelesen werden. Es ist zu "99%iger"
Sicherheit kein Programmierfehler.
Meine Frage: Ist jemandem schon einmal ein unerklärliches
Verhalten eines Scriptes aufgefallen, das eigentlich nur
an fehlerhafter Speicherverwaltung in LSL liegen kann?
Das also LSL z.B. lokale und globale Strings, wenn sie wie
im vorliegenden Fall ziemlich oft hin und hergeschoben werden,
verfremdet?
Mit diversen Debugausgaben habe ich Stringlängen und
Zwischenresultate geprüft. Ich kann keinen Fehler finden.
Bevor ich aufwändigere Prüfungen vornehme, frage ich lieber
erstmal hier und spare evtl. Zeit und muss evtl. einen anderen
Weg gehen.