Fix: prevent crash when deleting marker whose group was already deleted
This commit is contained in:
parent
8246e80d69
commit
2ea668a715
@ -22,9 +22,7 @@ bool MarkerGroup::add(Marker *m)
|
|||||||
connect(m, &Marker::positionChanged, this, &MarkerGroup::markerMoved);
|
connect(m, &Marker::positionChanged, this, &MarkerGroup::markerMoved);
|
||||||
connect(m, &Marker::typeChanged, this, &MarkerGroup::checkMarker);
|
connect(m, &Marker::typeChanged, this, &MarkerGroup::checkMarker);
|
||||||
connect(m, &Marker::domainChanged, this, &MarkerGroup::checkMarker);
|
connect(m, &Marker::domainChanged, this, &MarkerGroup::checkMarker);
|
||||||
connect(m, &Marker::deleted, [=](){
|
connect(m, &Marker::deleted, this, &MarkerGroup::remove);
|
||||||
remove(m);
|
|
||||||
});
|
|
||||||
|
|
||||||
if(markers.size() > 0) {
|
if(markers.size() > 0) {
|
||||||
m->setPosition((*markers.begin())->getPosition());
|
m->setPosition((*markers.begin())->getPosition());
|
||||||
|
@ -17,7 +17,6 @@ public:
|
|||||||
~MarkerGroup();
|
~MarkerGroup();
|
||||||
|
|
||||||
bool add(Marker *m);
|
bool add(Marker *m);
|
||||||
bool remove(Marker *m);
|
|
||||||
|
|
||||||
unsigned int getNumber() const;
|
unsigned int getNumber() const;
|
||||||
bool applicable(Marker *m);
|
bool applicable(Marker *m);
|
||||||
@ -25,6 +24,9 @@ public:
|
|||||||
signals:
|
signals:
|
||||||
void emptied(MarkerGroup*);
|
void emptied(MarkerGroup*);
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
bool remove(Marker *m);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
void markerMoved(double newpos);
|
void markerMoved(double newpos);
|
||||||
|
Loading…
Reference in New Issue
Block a user