diff -r aebc0161f6e5 -r 9ce7a01a95c7 lemon/bits/alteration_notifier.h --- a/lemon/bits/alteration_notifier.h Wed Jul 23 11:32:47 2008 +0200 +++ b/lemon/bits/alteration_notifier.h Wed Jul 23 16:51:07 2008 +0100 @@ -409,9 +409,9 @@ (*it)->erase(item); ++it; } catch (const ImmediateDetach&) { - it = _observers.erase(it); (*it)->_index = _observers.end(); (*it)->_notifier = 0; + it = _observers.erase(it); } } } @@ -429,9 +429,9 @@ (*it)->erase(items); ++it; } catch (const ImmediateDetach&) { - it = _observers.erase(it); (*it)->_index = _observers.end(); (*it)->_notifier = 0; + it = _observers.erase(it); } } } @@ -468,9 +468,9 @@ (*it)->clear(); ++it; } catch (const ImmediateDetach&) { - it = _observers.erase(it); (*it)->_index = _observers.end(); (*it)->_notifier = 0; + it = _observers.erase(it); } } }