Fix for Coriolis issue #6 (Katana core dump on ALU16).

* Bug: In Katana::AutoSegment::_preDestroy(), remove the segment from
    the source & target AutoContact cache.
      In LibreSOC/experiment7, weird placement caused fixed AutoSegment
    overlaping blockage to be deleteds. It seems to have never occured
    before (or at least, no ended up in core dump).
This commit is contained in:
Jean-Paul Chaput 2020-04-15 10:41:46 +02:00
parent 7e7e7170ba
commit 05c0907d5c
1 changed files with 5 additions and 0 deletions

View File

@ -534,6 +534,11 @@ namespace Anabatic {
_observers.notify( Destroy );
AutoContact* contact = getAutoSource();
if (contact) contact->cacheDetach( this );
contact = getAutoTarget();
if (contact) contact->cacheDetach( this );
Session::unlink( this );
cdebug_tabw(145,-1);
}