mirror of
https://github.com/ShaYmez/P25Clients.git
synced 2024-11-22 04:11:39 -05:00
Delete correct rpt
iterator is changed by erase vector function thus we were deleting incorrect rpt from vector and leaving memory unstable...
This commit is contained in:
parent
55cefd6e64
commit
4374454783
@ -233,8 +233,8 @@ void CP25Reflector::run()
|
||||
|
||||
for (std::vector<CP25Repeater*>::iterator it = m_repeaters.begin(); it != m_repeaters.end(); ++it) {
|
||||
if (CUDPSocket::match((*it)->m_addr, rpt->m_addr)) {
|
||||
m_repeaters.erase(it);
|
||||
delete *it;
|
||||
m_repeaters.erase(it);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -304,8 +304,8 @@ void CP25Reflector::run()
|
||||
LogMessage("Removing %s (%s) disappeared", (*it)->m_callsign.c_str(),
|
||||
CUDPSocket::display((*it)->m_addr, buff, 80U));
|
||||
|
||||
m_repeaters.erase(it);
|
||||
delete *it;
|
||||
m_repeaters.erase(it);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user