gravatar
deba@inf.elte.hu
deba@inf.elte.hu
Fix ImmediateDetach in AlterationObserver (ticket #130)
0 1 0
default
1 file changed with 3 insertions and 3 deletions:
↑ Collapse diff ↑
Ignore white space 8 line context
... ...
@@ -408,11 +408,11 @@
408 408
        try {
409 409
          (*it)->erase(item);
410 410
          ++it;
411 411
        } catch (const ImmediateDetach&) {
412
          it = _observers.erase(it);
413 412
          (*it)->_index = _observers.end();
414 413
          (*it)->_notifier = 0;
414
          it = _observers.erase(it);
415 415
        }
416 416
      }
417 417
    }
418 418

	
... ...
@@ -428,11 +428,11 @@
428 428
        try {
429 429
          (*it)->erase(items);
430 430
          ++it;
431 431
        } catch (const ImmediateDetach&) {
432
          it = _observers.erase(it);
433 432
          (*it)->_index = _observers.end();
434 433
          (*it)->_notifier = 0;
434
          it = _observers.erase(it);
435 435
        }
436 436
      }
437 437
    }
438 438

	
... ...
@@ -467,11 +467,11 @@
467 467
        try {
468 468
          (*it)->clear();
469 469
          ++it;
470 470
        } catch (const ImmediateDetach&) {
471
          it = _observers.erase(it);
472 471
          (*it)->_index = _observers.end();
473 472
          (*it)->_notifier = 0;
473
          it = _observers.erase(it);
474 474
        }
475 475
      }
476 476
    }
477 477
  };
0 comments (0 inline)