Delphi-Quellcode:
function UTF8ToString(const S: array of Byte): string; overload;
var
Dest: array[0..511] of Char;
begin
SetString(Result, Dest, UTF8ToUnicode(Dest, Length(Dest), _PAnsiChr(@S[1]), S[0])-1); // _PAnsiChr(@S[1]) ist "ET" _PAnsiChr(@S[0]) müsste dann "CET" sein???
end;
Diese Funktion ist anscheinend von ShortString nach "array of bytes" adaptiert worden. Man beachte das
S[0]. Das soll ja wohl die Länge sein..
Das denke ich auch. Und die Funkionen ein paar Zeilen darüber muten auch alle wie ein Copy-Pasta aus einer Shortstring Funktion an....
Ich habe einfach nur Angst dass in System.pas zu beheben.... wegen der Abhängigkeiten... vielleicht erwartet Abhängigercode diesen Fehler und trägt dafür Sorge...