Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
23. Dez 2020
Ach, die grundsätzliche Idee, das es sowas geben sollte, hatten auch paar Andere. :)
Und letztendlich hatten die es dann auch auf einem anderen Wege implementiert. (gibt ja mehrer möglche Lösungen)
Zum Glück hatten die ihre erste Lösung gleich nochmal überarbeitet.
Hab gehört das war in 10.3 schon drin, aber sooo langsam/schlecht, dass man es nicht veröffentlicht hatte. :stupid:
Das...
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
22. Jul 2020
Da steht es sei ein Dupplicat, bei sowas bleibt nur ein Ticket offen (meistens das Erste, oder das Bessere) und die Anderen werden als Doppelt markiert und geschlossen.
Blöder Weise kann ich diesmal aber nicht sehen welches das andere Dupplikat ist (das Offene) ... mir war so dass das sonst ebenfalls im Kopf stünde,
aber es könnte sein, dass 10581 das aktuelle Ticket ist.
MEissing und er...
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
22. Jul 2020
please vote
https://quality.embarcadero.com/browse/RSP-10568
https://quality.embarcadero.com/browse/RSP-10581
Also eigentlich hätte man das schon längst beheben können. :wall:
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
22. Jul 2020
Dann ist das ein Fehler in sich.
Diese Funktion ist definitiv falsch, also gehört sie gebugfixt.
Wenn anderer Code diesen "Fehler" erwartet und ungeprüft übernimmt, dann ist dort jemand selbst Schuld.
Wie das jetzt ganz genau am Besten gefixt werden sollte, da müsste ich auch nochmal genauer drüberschauen,
aber da man die System.pas sowieso nicht wirklich kompilieren/austauschen kann,...
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
21. Jul 2020
Besser ist es immer das grundlegende Problem, anstatt nur die Symptome zu beheben.
Rein funktionell geht es auch den "Fehler" an beiden Stellen zu beheben, wobei TEncoding da einen größeren Overhead hat.
Wenn du über den String-Helper gehst, dann ist es dort auch überall 0-basiered und in jeder Platform einheitlich.
S.Chars(0) = S {im Windows} ... abgesehn von dem nutzlosen Funktionsaufruf...
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
21. Jul 2020
Nun: Bugmeldung im Quality-Portal
S statt S
oder gleich den Mist mit dem @ lassen, also PAnsiChr(S) statt PAnsiChr(@S).
Grund: $ZeroBasedStrings sind im NextGen (Android/iOS) aktiv.
http://docwiki.embarcadero.com/RADStudio/Rio/en/Zero-based_strings_(Delphi)
Forum: Cross-Platform-Entwicklung
Delphi
by himitsu,
21. Jul 2020
OK, abgesehn vom TRIM sollte, UTF8.GetString und Utf8ToString doch eigentlich gleiche Ergebnisse liefern,
und wenn sie das nicht tun, dann sollte man besser auch gleich mit prüfen was dort schief läuft.
Ansonsten:
Warum gibt die Funktion einen Pointer zurück, anstatt des Records?
Gerade hier ist das eine Liebslingsstelle für Speicherlecks und dazumal es absolot sinnlos ist, weil immer...