Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.046 Beiträge
Delphi 12 Athens
|
AW: (Android) Fehler in DateUtils behoben // TTimezone.Local.ID // Ich bitte um Prüfu
22. Jul 2020, 12:50
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...
Andreas Nobody goes there anymore. It's too crowded!
Geändert von QuickAndDirty (22. Jul 2020 um 13:08 Uhr)
|