Skip to content

Copy DataEngine relays before itterating

David Edmundson requested to merge work/signal_relay into master

relay->checkQueueing emits a signal to all observers. As it's a signal anything can happen at that point. It's seemingly common for a receiver to connect/disconnect a new visualisation which in turn alters d->relays.

This broke when a foreach (with implicit shallow copy) was ported to a for statement.

This report contains a good analysis and test case

BUG: 422973

Probably also:

BUG: 421392

BUG: 423713

BUG: 423776

BUG: 422230

BUG: 423081

Edited by David Edmundson

Merge request reports

Loading