From: Frederic B. <fre...@fr...> - 2007-01-28 20:34:22
|
Mathias, Selon Mathias Froehlich : > --- 434,445 ---- > if(_purgeListeners) { > _purgeListeners =3D false; > ! map<int, FGNasalListener *>::iterator it; > ! for(it =3D _listener.end(); it !=3D _listener.end();) { > FGNasalListener *nl =3D it->second; This line above is suspicious to me. How 'it' could be valid the first ti= me when initialized with end() ? The previous code was doing pre decrementation t= hat I don't see here. > if(nl->_dead) { > ! _listener.erase(it--); > delete nl; > + } else { > + --it; > } > } -Fred -- Fr=E9d=E9ric Bouvier http://frfoto.free.fr Photo gallery - album photo http://www.fotolia.fr/p/2278/partner/2278 Other photo gallery http://fgsd.sourceforge.net/ FlightGear Scenery Designer |