[Allegro] Noch'n Problem mit a9910 (weitere Win'10-Eigenheit)
Bernhard Eversberg
b-eversberg at gmx.de
Fr Aug 18 10:55:59 CEST 2017
Bei einem Anwender war folgendes aufgefallen:
Es wurde inn einem Formular ein Schlagwort eingegeben, das mit Ö begann.
Dieses verschwand umgehend. Dasselbe passierte mit anderen Umlauten und Sonderzeichen.
Die Formulareingabe, stellte sich dann raus, wurde von einem FLEX bearbeitet, der folgende
Befehle enthielt:
var #31s
ins _:_;_
ins #31s
Der Fehler bestand darin, daß ein Befehl var #nnn den Inhalt von #nnn in einen
Zwischenspeicher kopiert. Der jedoch war so deklariert, daß am Anfang der Inhalts
von #nnn alle Codes oberhalb 127 verschwanden, weil sie dann als Werte unterhalb 0 ankamen.
Die Gründe liegen in den ältesten Zeiten von Unix und C, als man mit Zeichenfolgen sehr
aufpassen mußte - das braucht hier nicht weiter ausgeführt zu werden. Hauptsache, die Sache
ist geklärt und behoben, indem die Typdeklaration geändert wurde.
Betroffen sind nur a9910.exe und a9910a.exe, die zum Download bereitliegen:
http://www.allegro-b.de/download/a9910.zip
http://www.allegro-b.de/download/a9910a.zip
Geprüft soll noch werden, ob bei acon auch sowas vorkommen kann. Bislang haben wir
allerdings acon noch nicht mit dem neuen Compiler (VisualC++ 2015) kompiliert.
B.E.
Mehr Informationen über die Mailingliste Allegro