Opened 13 years ago

Closed 13 years ago

#103 closed Aufgabe (fixed)

DSfG: DSfGAdrSetOrValidate

Reported by: Melanie Hermann Owned by: Melanie Hermann
Priority: kurzfristig Milestone:
Component: Protokolle Version:
Severity: Fehler Keywords:
Cc:

Description

DSfGAdrSetOrValidate() muss überprüft werden. Hier ist wohl ein Fehler drin.
Wenn man von G- auf Q-Instanz umschaltet verschwinden die Adressen vom DSfG-Bus!

Change History (1)

comment:1 by Melanie Hermann, 13 years ago

Resolution: fixed
Status: newclosed

Fehler war nicht in DSfGAdrSetOrValidate().

Es gab ein Problem bei C_DSfGBus::destroyTeilnehmer() bzw. C_DSfGBus::buildTeilnehmer().
Wenn in C_DSfGBus::buildTeilnehmer() ein Teilnehmer vom Typ 'G' oder 'Q' angelegt werden soll, müssen zuvor alle eingetragenen 'G' - und 'Q' - Teilnehmer entfernt werden.

Denn es trat folgendes Problem auf: Umschalten von Gasbesch.I -> Gasbesch.II:

  • Alle Adressen, die vom Typ 'Q' sind und zu Stream1 gehören werden gelöscht. (Index 19 == Adresse 'T' bleibt aber mit Typ 'G' und Stream1 belegt.)
  • Anlegen von Adresse 'T' als Typ 'Q' auf Stream1 schlägt fehl, da es noch belegt ist.

=> Keine Adresse 'T' mehr auf diesem DSfG-Bus vorhanden!

Note: See TracTickets for help on using tickets.