Reset child iterators on deletion.
This fixes an illegal access in ~TeeSongIterator. svn-id: r39272
This commit is contained in:
parent
f525575495
commit
d2514d20b9
1 changed files with 2 additions and 0 deletions
|
@ -1575,11 +1575,13 @@ SongIterator *TeeSongIterator::handleMessage(SongIteratorMessage msg) {
|
||||||
return NULL;
|
return NULL;
|
||||||
} else if (!(_status & TEE_LEFT_ACTIVE)) {
|
} else if (!(_status & TEE_LEFT_ACTIVE)) {
|
||||||
delete _children[TEE_LEFT].it;
|
delete _children[TEE_LEFT].it;
|
||||||
|
_children[TEE_LEFT].it = 0;
|
||||||
old_it = _children[TEE_RIGHT].it;
|
old_it = _children[TEE_RIGHT].it;
|
||||||
delete this;
|
delete this;
|
||||||
return old_it;
|
return old_it;
|
||||||
} else if (!(_status & TEE_RIGHT_ACTIVE)) {
|
} else if (!(_status & TEE_RIGHT_ACTIVE)) {
|
||||||
delete _children[TEE_RIGHT].it;
|
delete _children[TEE_RIGHT].it;
|
||||||
|
_children[TEE_RIGHT].it = 0;
|
||||||
old_it = _children[TEE_LEFT].it;
|
old_it = _children[TEE_LEFT].it;
|
||||||
delete this;
|
delete this;
|
||||||
return old_it;
|
return old_it;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue