Abo
  1. Foren
  2. Kommentare
  3. Applikationen
  4. Alle Kommentare zum Artikel
  5. › Telugu: Indisches Schriftzeichen…

Wie kommt es immer wieder dazu?

  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


  1. Wie kommt es immer wieder dazu?

    Autor: Eheran 15.02.18 - 22:54

    Was ist die Ursache für derartige Fehler? Wie kann ein Symbol zu Abstürzen führen?
    Entweder ist die Schriftart hinterlegt und damit das Symbol kein Problem oder es wird einfach nichts/Umrandetes Fragezeichen/... angezeigt.

    Ich würde mich da um Aufklärung freuen, wie etwas triviales so tiefgreifende Folgen haben kann.

  2. Re: Wie kommt es immer wieder dazu?

    Autor: schap23 15.02.18 - 22:56

    Grundlegender Fehler im Design von iOS. Pflasterchen drüberkleben wird nicht helfen.

  3. Re: Wie kommt es immer wieder dazu?

    Autor: Proctrap 15.02.18 - 23:59

    utf ist ein komplexes biest & nicht einfach nur irgend eine lookup table
    trotzdem etwas arm dass Apple damit solche Probleme hat

    Golem & die fehlende "by Thread" Ansicht auf Mobilgeräten.. | kein JS für golem = keine Seitenhüpfer

  4. Re: Wie kommt es immer wieder dazu?

    Autor: xmaniac 16.02.18 - 00:47

    naja, also so komplex ist es eigentlich auch nicht, z.B. für utf8 auf die escapesequenz zu reagieren und zu einem multibyte charakter umzurechnen. um nicht zu sagen banal. aber gut, bei einer firma wo auch eine simple taschenrechner-app probleme verursacht, weil erst das ende einer animation das event triggert...

  5. Re: Wie kommt es immer wieder dazu?

    Autor: panzi 16.02.18 - 06:10

    Ich glaub nicht das es sich dabei um ein Problem mit der Kodierung (UTF-8, UTF-16 etc.) handelt, sondern um eines beim Zusammenbauen und Rendern des Glyphen. So Zeichen sind oft kein einzelner Codepoint sondern setzen sich aus mehreren combining characters zusammen, die dann mitunter große Änderungen in der Darstellung verursachen. Das einfachste Beispiel währen z.B. Umlaute, die in Unicode durch zwei Codepoints dargestellt werden können, also z.B. ein a und ein weiterer Codepoint der sagt "setze Punkte über das letzte Zeichen". In anderen Sprachen kann das noch viel komplexer werden und irgendwo in der Behandlung dieser Logik haben sie wohl einen Fehler gemacht. Aber schon arg, dass so ein Fehler gleich zum Absturz führt und nicht nur zu einem kaputt aussehendem Zeichen. D.h. das haben die sehr lowlevlig programmiert mit wenigen Checks.

  6. Re: Wie kommt es immer wieder dazu?

    Autor: DebugErr 16.02.18 - 06:15

    und dann kommt der renderer mit zwj's, rtl, emojirotz, etc

  7. Re: Wie kommt es immer wieder dazu?

    Autor: xmaniac 16.02.18 - 07:21

    panzi schrieb:
    --------------------------------------------------------------------------------
    > Ich glaub nicht das es sich dabei um ein Problem mit der Kodierung (UTF-8,
    > UTF-16 etc.) handelt, sondern um eines beim Zusammenbauen und Rendern des
    > Glyphen. So Zeichen sind oft kein einzelner Codepoint sondern setzen sich
    > aus mehreren combining characters zusammen, die dann mitunter große
    > Änderungen in der Darstellung verursachen. Das einfachste Beispiel währen
    > z.B. Umlaute, die in Unicode durch zwei Codepoints dargestellt werden
    > können, also z.B. ein a und ein weiterer Codepoint der sagt "setze Punkte
    > über das letzte Zeichen". In anderen Sprachen kann das noch viel komplexer
    > werden und irgendwo in der Behandlung dieser Logik haben sie wohl einen
    > Fehler gemacht. Aber schon arg, dass so ein Fehler gleich zum Absturz führt
    > und nicht nur zu einem kaputt aussehendem Zeichen. D.h. das haben die sehr
    > lowlevlig programmiert mit wenigen Checks.

    Sorry, aber das halte ich für Unfug. Umlaute sind jeweils eigene ganz normale Unicode Zeichen:
    http://javawiki.sowas.com/doku.php?id=java:unicode

    Wenn überhaupt, hat das bestenfalls etwas mit einem umständlichen Unicode-Rendering aber nichts mit Unicode zu tun. Hast du irgendwelche Links zu deiner Behauptung? Das Textrendering wird aber aus Performancegründen oft im Kernel erledigt, von daher ist ein crash bei einem Fehler nicht sehr erstaunlich.

  8. Re: Wie kommt es immer wieder dazu?

    Autor: mistake 16.02.18 - 07:48

    xmaniac schrieb:
    --------------------------------------------------------------------------------
    > Hast du irgendwelche Links zu deiner Behauptung?

    https://de.wikipedia.org/wiki/Trema#Eingabe

    Don't forget to kill Phillip!

  9. Re: Wie kommt es immer wieder dazu?

    Autor: Dino13 16.02.18 - 08:34

    Dann lese doch einfach mal den Teil über Unicode.
    Ausserdem ist Trema was anderes als ein Umlaut

  10. Re: Wie kommt es immer wieder dazu?

    Autor: eidolon 16.02.18 - 10:09

    Ändert trotzdem nichts daran, dass man nicht jedes Zeichen einzeln in einer Schriftart einprogrammiert, sondern aus Teilen zusammenbaut, wenn es gemeinsam genutzte Elemente gibt.

  11. Re: Wie kommt es immer wieder dazu?

    Autor: Dino13 16.02.18 - 10:13

    Natürlich ändert es etwas da beim Unicode es expliziten Code für Buchstaben mit Umlaut gibt. Man kann zwar auch ein Ä erstellen indem man ein A mit einem Trema verbindet aber warum sollte man das tun wenn schon ein eigener Code existiert?

  12. Re: Wie kommt es immer wieder dazu?

    Autor: theonlyone 16.02.18 - 12:09

    äöü sind blöde Beispiele, aber gerade die Sonderzeichen unter/über Buchstaben machen hier immer wieder Probleme.

    Hat man z.B. über einem Zeichen aber hunderte 1² dran gehängt geht das immer weiter nach rechts oben hinaus, wird aber u.U. (abhängig wie man damit umgeht) als 1 Zeichen behandelt.

    Man könnte im krassen Fall also ein Zeichen schreiben und dann beliebig viel extra Text und andere Späße in diese extra Sonderzeichen Bereiche reinschreiben. Wenn das schlecht behandelt wird hat man hier allerlei Problemfälle zu betrachten, weil man praktisch neben seiner normalen Zeichenfolge für jedes Zeichen noch eine extra Y-Achse bekommt mit Zeichen die nach oben hinaus gehen und Zeichen die nach unten hinaus gehen. Witzig wirds dann auch wenn man Kombinationen davon erlaubt, also das ein Zeichen nach oben hinaus geht und das Zeichen hat dann selbst ein Zeichen angehängt das nach unten geht, oder gar nach "links" oder sonst wie verrückte Spezialfälle erzeugt, nur weil man versucht das Rendering so flexibel wie möglich zu halten (da explodiert die Fehleranzahl eben auch, weil man plötzlich so viel beachten muss und das mit allen möglichen exotischeren Zeichen die man sonst nie benutzt oder kennt).

    ----

    Probleme mit solchen Zeichen gibt es häufiger als man glaubt, aber selten sorgt das dafür das der Nutzer davon etwas mitbekommt, im Zweifel wird das Zeichen eben nicht gerendert , oder nicht mehr erkannt.

    Aber gerade für Datenbanken usw. sind diese Sonderzeichen schon sehr ätzend (am einfachsten macht man es sich die nicht zuzulassen, ansonsten darf man sich mit dem Scheiß herum ärgern).

  13. Re: Wie kommt es immer wieder dazu?

    Autor: xmaniac 16.02.18 - 12:14

    eidolon schrieb:
    --------------------------------------------------------------------------------
    > Ändert trotzdem nichts daran, dass man nicht jedes Zeichen einzeln in einer
    > Schriftart einprogrammiert, sondern aus Teilen zusammenbaut, wenn es
    > gemeinsam genutzte Elemente gibt.


    Äääh doch! Fakten sind nicht so dein Ding? Das es eigene Zeichen für Umlaute gibt ändert ganz gewaltig etwas daran, dass diese nicht aus einem Zeichen für den Buchstaben und einem für die Punkte zusammengesetzt werden *facepalm*

  14. Komisch

    Autor: mhstar 16.02.18 - 12:18

    dass alle meine Anwendungen ohne das ich viel machen musste "einfach so" UTF8 voll unterstützen. Bei nicht darstellbaren Zeichen gibt's halt ein � oder ein Kästchen, aber auch ohne dass ich was machen musste.

    Das einzige was ich mache: ich verwende halt die ganz normalen Frameworks für Windows und Linux.

    Liegt vielleicht doch an einem Designfehler von Apple?
    (auch die Webanwendung von Golem unterstützt UTF8 wie man sieht - genau so wie die meinen. Scheint also kein unlösbares Problem in der IT zu sein, sondern eher, wie man so schön sagt, trivial)



    1 mal bearbeitet, zuletzt am 16.02.18 12:19 durch mhstar.

  15. Re: Wie kommt es immer wieder dazu?

    Autor: xmaniac 16.02.18 - 12:24

    theonlyone schrieb:
    --------------------------------------------------------------------------------
    > äöü sind blöde Beispiele, aber gerade die Sonderzeichen unter/über
    > Buchstaben machen hier immer wieder Probleme.
    >
    > Hat man z.B. über einem Zeichen aber hunderte 1² dran gehängt geht das
    > immer weiter nach rechts oben hinaus, wird aber u.U. (abhängig wie man
    > damit umgeht) als 1 Zeichen behandelt.
    >
    > Man könnte im krassen Fall also ein Zeichen schreiben und dann beliebig
    > viel extra Text und andere Späße in diese extra Sonderzeichen Bereiche
    > reinschreiben. Wenn das schlecht behandelt wird hat man hier allerlei
    > Problemfälle zu betrachten, weil man praktisch neben seiner normalen
    > Zeichenfolge für jedes Zeichen noch eine extra Y-Achse bekommt mit Zeichen
    > die nach oben hinaus gehen und Zeichen die nach unten hinaus gehen. Witzig
    > wirds dann auch wenn man Kombinationen davon erlaubt, also das ein Zeichen
    > nach oben hinaus geht und das Zeichen hat dann selbst ein Zeichen angehängt
    > das nach unten geht, oder gar nach "links" oder sonst wie verrückte
    > Spezialfälle erzeugt, nur weil man versucht das Rendering so flexibel wie
    > möglich zu halten (da explodiert die Fehleranzahl eben auch, weil man
    > plötzlich so viel beachten muss und das mit allen möglichen exotischeren
    > Zeichen die man sonst nie benutzt oder kennt).
    >
    > ----
    >
    > Probleme mit solchen Zeichen gibt es häufiger als man glaubt, aber selten
    > sorgt das dafür das der Nutzer davon etwas mitbekommt, im Zweifel wird das
    > Zeichen eben nicht gerendert , oder nicht mehr erkannt.
    >
    > Aber gerade für Datenbanken usw. sind diese Sonderzeichen schon sehr ätzend
    > (am einfachsten macht man es sich die nicht zuzulassen, ansonsten darf man
    > sich mit dem Scheiß herum ärgern).

    Du konstruierst hier ein Problem, dass es so gar nicht gibt. Derart komplex wie hier in deiner Fantasie ist Unicode überhaupt nicht. Mehrere Y Achsen?

    Es ist ein einzelnes Zeichen, davon hat Unicode genau 136755 - also für IT Verhältnisse sehr gut abzählbar. Die hätte man vielleicht einfach alle mal von der Textengine zum Test rendern lassen können. Nur so eine Idee...

    PS: Und wenn dir sowas in Datenbanken Probleme bereitet, wo wirklich nur die Bytes gespeichert werden müssen aber nichts gerendert, dann hast du wirklich den Job verfehlt, falls der irgendetwas mit IT zu tun hat.



    5 mal bearbeitet, zuletzt am 16.02.18 12:40 durch sfe (Golem.de).

  16. Re: Wie kommt es immer wieder dazu?

    Autor: eidolon 16.02.18 - 12:40

    Der OP redet hier aber nicht über äöü, sondern um andere Zeichen, wo eben genau das so gemacht wird.

  17. Re: Wie kommt es immer wieder dazu?

    Autor: theonlyone 16.02.18 - 14:13

    xmaniac schrieb:
    --------------------------------------------------------------------------------
    > Du konstruierst hier ein Problem, dass es so gar nicht gibt. Derart komplex
    > wie hier in deiner Fantasie ist Unicode überhaupt nicht. Mehrere Y Achsen?

    T͓̹h̷̳͎̮̣̯̺ẹ͉͙̭̱̕͜r̜͚̰̱̝͇̞̺͟e͇̩̪ ̞̦͇̩͍̠̳͙͍͘͜i̧̠̖̤̥̲̪͝s͔̪͖͉ ̡̡̦̜̲̹̞̺n̸̗̩͇̺͖̠ò̶͙͖̙͉͈͡ ̵̺̣͍̮̹r̷̢͓͓e̷͈̘̳͕̝á̠̟͚̤͕̘͕͜͞l̢̮̥͎̪̦̝̜͟i̧͞͏̯̜͍̫̥̭̳̹t̸̺̖y̨̡̻͈̟͈͔̝̱͖̜͞.̨͚̱̼͍̭̕_̨͓͖͞-̧̩̮͢~̴̘̮̠̻͇͚̯͠:̷̦͈̣̳̟̪͢ͅ#̥͝

    A̸̸̘̮̻̙̖͍̥̘͚ͪͦͭ͗h͎̱ͦ́̍͠,̗̫̝͇͉̈͗͞ͅ ̶̘͖͉̏ͣ̑͐̓ͥͣt͔͔̗͙̞̥̘͍̏͐̚h̢̤̽̿͗ͬͬ͂͂̚a̸͕̖̘̞̖ͩ̉̍̉͢n͓̟̜̼̞͉͆̋͢͝ͅk̛̥͖̮͙̯̳̓̂ŝ̥͍̼̲̼̣̹͒̇̑!̿͊͘͟҉͓̤̝͍͇̟̰

    So als Beispiel, damit du weißt was ich meine.

    Wenn du dir anschaust wie das im Quelltext aussieht, ist das viel mehr als nur 1 Zeichen.

    > Es ist ein einzelnes Zeichen, davon hat Unicode genau 136755 - also für IT
    > Verhältnisse sehr gut abzählbar. Die hätte man vielleicht einfach alle mal
    > von der Textengine zum Test rendern lassen können. Nur so eine Idee...

    Die Problematik der Übergroßen Zeichen gab es in Youtube Comments.

    Da war ein auf X Zeichen begrenztes Kommentar eben einfach mal Gigabyte an Daten, weil eben genau diese Fehler zum tragen gekommen sind.

    > PS: Und wenn dir sowas in Datenbanken Probleme bereitet, wo wirklich nur
    > die Bytes gespeichert werden müssen aber nichts gerendert, dann hast du
    > wirklich den Job verfehlt, falls der irgendetwas mit IT zu tun hat.

    Natürlich speichert deine Datenbank einfach ab was du rein schiebst, aber das entspricht schlichtweg nicht dem was eingegeben wurde.

    Die üblichen verdächtigen wären Escape-Zeichen und alle Arten von Code-Execution, SQL-Injektions usw. usw. ; das Thema hat man bereits bei ganz normalen deutschen/englischen Text. Es ist also nicht "völlig" trivial, aber die Thematik ist so relevant das man dafür schon einige Standardlösung hat und die hoffentlich auch verwendet (Prepared Statements in SQL usw.).

    Das man mit all den Problemen umgehen kann versteht sich von selbst, was nichts daran ändert das es eine Menge Probleme gibt, sobald du nicht nur die üblichen Character Werte akzeptierst, sondern auch exotischere Fremdsprachen (arabisch, indisch, chinesisch usw.). Wenn du damit nichts am Hut hast sei froh drum.



    3 mal bearbeitet, zuletzt am 16.02.18 14:25 durch theonlyone.

  18. Re: Wie kommt es immer wieder dazu?

    Autor: theonlyone 16.02.18 - 14:35

    Die Extreme Variante des Textes wird vom Golem Kommentar ohne Fehlermeldung gar nicht akzeptiert.

    Also irgendwelche Checks gibt es da schon, oder es kracht sobald es in die Datenbank geschrieben werden soll.

    ----

    Man sieht, diese Zeichen machen allerlei Probleme, die man eben beachten muss.


    Für die standard Abfrage nach "Anzahl Zeichen im Text" liefert hier wohl eben nicht die Tatsächlich Menge an Symbolen zurück , also durchaus ähnlich dem Fehler wie es in den Youtube Comments auch war.

    Die Oberfläche akzeptiert also die Eingabe der "riesen" Symbole, aber im backend schreit dann spätestens irgendetwas auf (wenn man Glück hat ... )



    1 mal bearbeitet, zuletzt am 16.02.18 14:37 durch theonlyone.

  19. Re: Wie kommt es immer wieder dazu?

    Autor: underflow 16.02.18 - 14:46

    Relevant:
    https://manishearth.github.io/blog/2018/02/15/picking-apart-the-crashing-ios-string/

  20. Re: Wie kommt es immer wieder dazu?

    Autor: panzi 16.02.18 - 18:22

    @xmaniac Ja klar gibt's in Unicode einen Codepoint für Ä und der wird auch i.d.R. benutzt. Ich habe gesagt "die in Unicode durch zwei Codepoints dargestellt werden können". *können* Siehe: http://unicode.org/reports/tr15/ (Suche nach Äffin) Sagte ja das ist "das einfachste Beispiel". Siehe auch Unicode Normalformen mit denen zwischen diesen verschiedenen Darstellungsoptionen hin und her konvertiert werden kann: https://en.wikipedia.org/wiki/Unicode_equivalence#Normal_forms Bitte informiere Dich bevor Du irgendetwas als "Unfug" bezeichnest, sonst läufst Du Gefahr Dich lächerlich zu machen, und das will keiner. :)

    Nichts für Ungut,
    panzi

  1. 1
  2. 2

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Zum Login

Stellenmarkt
  1. Bosch Gruppe, Weilimdorf
  2. Bosch Gruppe, Stuttgart-Feuerbach
  3. Alfred Kärcher SE & Co. KG, Winnenden bei Stuttgart
  4. Dataport, Hamburg

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 14,99€
  2. ab 69,99€ mit Vorbesteller-Preisgarantie (Release 26.10.)
  3. 33,99€
  4. 33,49€


Haben wir etwas übersehen?

E-Mail an news@golem.de


Sky Ticket mit TV Stick im Test: Sky kann's gut, Netflix und Amazon können es besser
Sky Ticket mit TV Stick im Test
Sky kann's gut, Netflix und Amazon können es besser

Gute Inhalte, aber grauenhafte Bedienung: So war Sky Ticket bisher. Die neue Version macht vieles besser, und mit dem Sky Ticket Stick lässt sich der Pay-TV-Sender kostengünstig auf den Fernseher bringen. Besser geht es aber immer noch.
Ein Test von Ingo Pakalski

  1. Comcast Bezahlsender Sky für 38,8 Milliarden US-Dollar verkauft
  2. Videostreaming Wiederholte Sky-Ausfälle verärgern Kunden
  3. Sky Ticket TV Stick Sky verteilt Streamingstick de facto kostenlos

Zahlen mit Smartphones im Alltagstest: Sparkassenkunden müssen nicht auf Google Pay neidisch sein
Zahlen mit Smartphones im Alltagstest
Sparkassenkunden müssen nicht auf Google Pay neidisch sein

In Deutschland gibt es mittlerweile mehrere Möglichkeiten, drahtlos mit dem Smartphone zu bezahlen. Wir haben Google Pay mit der Sparkassen-App Mobiles Bezahlen verglichen und festgestellt: In der Handhabung gleichen sich die Apps zwar, doch in den Details gibt es einige Unterschiede.
Ein Test von Tobias Költzsch

  1. Smartphone Auch Volksbanken führen mobiles Bezahlen ein
  2. Bezahldienst ausprobiert Google Pay startet in Deutschland mit vier Finanzdiensten

Elektroroller-Verleih Coup: Zum Laden in den Keller gehen
Elektroroller-Verleih Coup
Zum Laden in den Keller gehen

Wie hält man eine Flotte mit 1.000 elektrischen Rollern am Laufen? Die Bosch-Tochter Coup hat in Berlin einen Blick hinter die Kulissen der Sharing-Wirtschaft gewährt.
Ein Bericht von Friedhelm Greis

  1. Neue Technik Bosch verkündet Durchbruch für saubereren Diesel
  2. Halbleiterwerk Bosch beginnt Bau neuer 300-mm-Fab in Dresden
  3. Zu hohe Investionen Bosch baut keine eigenen Batteriezellen

  1. Telefónica: 5G-Ausbau würde "uns rund 76 Milliarden Euro kosten"
    Telefónica
    5G-Ausbau würde "uns rund 76 Milliarden Euro kosten"

    Laut Berechnungen der Telefónica wäre ein breiter 5G-Ausbau mit den bisher diskutierten Frequenzen praktisch unbezahlbar. In Deutschland wären dafür über 200.000 Mobilfunkstandorte erforderlich.

  2. Bundesnetzagentur: Verbraucherzentrale sieht Funklöcher bei 5G vorprogrammiert
    Bundesnetzagentur
    Verbraucherzentrale sieht Funklöcher bei 5G vorprogrammiert

    Der Verbraucherzentrale Bundesverband kritisiert, dass die ländlichen Regionen schlecht mit 5G versorgt werden sollen. Die Versprechungen von ruckelfreiem Surfen und weniger Funklöchern könnten so nicht eingehalten werden

  3. Microsoft: In der Data Box erreichen Daten die Azure-Cloud per Post
    Microsoft
    In der Data Box erreichen Daten die Azure-Cloud per Post

    Microsoft erweitert sein Data-Box-Angebot um eine SSD und einen 1-Petabyte-Kasten. Kunden können auf den Datenträgern ihre Dateien speichern, verschlüsseln und per Post an Microsoft senden. Zwei weitere Systeme bringen die Datenmigration in die Cloud auch online voran.


  1. 19:29

  2. 18:44

  3. 18:07

  4. 17:30

  5. 17:10

  6. 16:50

  7. 16:26

  8. 16:05