proper cleanup of local channels
This commit is contained in:
@@ -899,9 +899,9 @@ bool cac::createChannelIO (const char *pName, cacChannel &chan)
|
||||
{
|
||||
cacLocalChannelIO *pIO;
|
||||
|
||||
pIO = this->services.createChannelIO ( pName, chan );
|
||||
pIO = this->services.createChannelIO ( pName, *this, chan );
|
||||
if ( ! pIO ) {
|
||||
pIO = cacGlobalServiceList.createChannelIO ( pName, chan );
|
||||
pIO = cacGlobalServiceList.createChannelIO ( pName, *this, chan );
|
||||
if ( ! pIO ) {
|
||||
if ( ! this->pudpiiu ) {
|
||||
if ( ! this->setupUDP () ) {
|
||||
@@ -929,6 +929,13 @@ bool cac::createChannelIO (const char *pName, cacChannel &chan)
|
||||
return true;
|
||||
}
|
||||
|
||||
void cac::uninstallLocalChannel ( cacLocalChannelIO &localIO )
|
||||
{
|
||||
this->defaultMutex.lock ();
|
||||
this->localChanList.remove ( localIO );
|
||||
this->defaultMutex.unlock ();
|
||||
}
|
||||
|
||||
bool cac::setupUDP ()
|
||||
{
|
||||
this->defaultMutex.lock ();
|
||||
|
||||
Reference in New Issue
Block a user