mirror of
https://github.com/overte-org/overte.git
synced 2025-08-03 23:03:20 +02:00
repairs for dead listener checks
This commit is contained in:
parent
f4ade0ee8e
commit
47a05bd3ec
1 changed files with 12 additions and 3 deletions
|
@ -230,7 +230,7 @@ void PacketReceiver::handleVerifiedPacket(std::unique_ptr<udt::Packet> packet) {
|
|||
|
||||
auto listener = it.value();
|
||||
|
||||
if (listener.first && it->second.isValid()) {
|
||||
if (listener.first) {
|
||||
|
||||
bool success = false;
|
||||
|
||||
|
@ -273,12 +273,21 @@ void PacketReceiver::handleVerifiedPacket(std::unique_ptr<udt::Packet> packet) {
|
|||
Q_ARG(QSharedPointer<NLPacket>,
|
||||
QSharedPointer<NLPacket>(nlPacket.release())));
|
||||
}
|
||||
} else {
|
||||
listenerIsDead = true;
|
||||
}
|
||||
} else {
|
||||
emit dataReceived(NodeType::Unassigned, nlPacket->getDataSize());
|
||||
|
||||
success = listener.second.invoke(listener.first,
|
||||
Q_ARG(QSharedPointer<NLPacket>, QSharedPointer<NLPacket>(nlPacket.release())));
|
||||
// one final check on the QPointer before we invoke
|
||||
if (listener.first) {
|
||||
success = listener.second.invoke(listener.first,
|
||||
Q_ARG(QSharedPointer<NLPacket>,
|
||||
QSharedPointer<NLPacket>(nlPacket.release())));
|
||||
} else {
|
||||
listenerIsDead = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!success) {
|
||||
|
|
Loading…
Reference in a new issue