mirror of https://github.com/aria2/aria2
2009-11-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that DHTAbstractNodeLookupTask never finishes if error occurred in DHTMessageDispatcherImpl::sendMessage(). * src/DHTMessageDispatcherImpl.ccpull/1/head
parent
489cfe3d0e
commit
f1043306f0
|
@ -1,3 +1,9 @@
|
|||
2009-11-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Fixed the bug that DHTAbstractNodeLookupTask never finishes if
|
||||
error occurred in DHTMessageDispatcherImpl::sendMessage().
|
||||
* src/DHTMessageDispatcherImpl.cc
|
||||
|
||||
2009-11-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Don't reuse URI if Request pool is not empty.
|
||||
|
|
|
@ -82,6 +82,13 @@ DHTMessageDispatcherImpl::sendMessage(const SharedHandle<DHTMessageEntry>& entry
|
|||
}
|
||||
} catch(RecoverableException& e) {
|
||||
_logger->error("Failed to send message: %s", e, entry->_message->toString().c_str());
|
||||
// Add message to DHTMessageTracker with timeout 0 to treat it as
|
||||
// time out. Without this, we have untracked message and some of
|
||||
// DHTTask(such as DHTAbstractNodeLookupTask) don't finish
|
||||
// forever.
|
||||
if(!entry->_message->isReply()) {
|
||||
_tracker->addMessage(entry->_message, 0, entry->_callback);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue