[Allegro] merkwürdes problem: bei mehrbändern wiederholt sich der inhalt des 2 bandes im dritten band

Thomas Berger ThB at Gymel.com
Mi Mär 2 23:17:17 CET 2016


Am 02.03.2016 um 17:44 schrieb Thomas Berger:
> Am 02.03.2016 um 16:51 schrieb Klaus Lehmann:
>> Guten Tag allerseits,

> Ah ja: Es ist lt. input.flx das erwuenschte
> Verhalten (der letzte vorhandene Band wird
> kopiert), aber es gibt anscheinend ein Problem
> mit "if fam", so dass das nicht immer passiert.

weitere Tests ergeben:

Anscheinend braucht man heutzutage mindestens zwei
Kinder, damit man von a99 als "Family" akzeptiert
wird. acon hingegen crasht bei "if fam" und "if main",
unabhaengig von der tatsaechlichen Kinderzahl.

Repariert man acon entsprechend (Buffer-Ueberlauf),
besteht das Problem nicht mehr, d.h. auch Einkind-
Familien sind dann in Ordnung. (Leider kann ich
die Korrektur derzeit nicht einchecken, acon
compilierte hier erst nach einigen Veraenderungen,
ich vermute Herr Eversberg hat nicht alle Quelldateien
auf dem aktuellen Stand eingecheckt).

Das Code-Archiv fuer a99 geht nur bis Juli 2012 zurueck,
dort ist die fragliche Stelle bereits wie jetzt: Fuer
a99 sind die Tests subtil anders implementiert als bei
acon (von wo sie anscheinend urspruenglich uebernommen
worden waren), es wird ein "+" ergaenzt (ist sichergestellt,
dass genuegend Platz ist?) und dann im Index gesucht,
insofern muesste konsequenterweise auf einen Treffer
weniger getestet werden. Genauer: acon ergaenzt eben
kein "+" und kann daher (habe das soeben ueberprueft)
beim "if fam" ueberlistet werden, wenn die Schluessel
im Index unterschiedliche Laenge haben. Es muss also
in beiden Programmen etwas repariert werden.
Andere Unterschiede sind bekannt und wurden hier neulich
bereits diskutiert: acon berechnet stets anhand der
Schluessel bei #-@ in der Indexparameterdatei, a99
nutzt den echten Primaerschluessel, bzw. den ueber
set p
eingestellten.

viele Gruesse
Thomas Berger



Mehr Informationen über die Mailingliste Allegro