mirror of
https://github.com/fairwaves/openbts-2.8.git
synced 2025-11-02 04:53:13 +00:00
r 4258 in private: Check for defunct transactions when handling Paging Respone.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4918 19bc5d8c-e614-43d4-8b26-e1612bc8e597
This commit is contained in:
@@ -302,6 +302,7 @@ void Control::PagingResponseHandler(const L3PagingResponse* resp, LogicalChannel
|
||||
DCCH->send(L3ChannelRelease(0x41));
|
||||
return;
|
||||
}
|
||||
LOG(INFO) << "paging reponse for transaction " << *transaction;
|
||||
// Set the transaction channel.
|
||||
transaction->channel(DCCH);
|
||||
// We are looking for a mobile-terminated transaction.
|
||||
@@ -419,7 +420,9 @@ unsigned Pager::pageAll()
|
||||
// Clear expired entries.
|
||||
PagingEntryList::iterator lp = mPageIDs.begin();
|
||||
while (lp != mPageIDs.end()) {
|
||||
if (!lp->expired()) ++lp;
|
||||
bool expired = lp->expired();
|
||||
bool defunct = gTransactionTable.find(lp->transactionID()) == NULL;
|
||||
if (!expired && !defunct) ++lp;
|
||||
else {
|
||||
LOG(INFO) << "erasing " << lp->ID();
|
||||
// Non-responsive, dead transaction?
|
||||
|
||||
Reference in New Issue
Block a user