diff -r fc8c25e5a2e8 -r 7117cbf1600a sipvoipprovider/src/svpsessionbase.cpp --- a/sipvoipprovider/src/svpsessionbase.cpp Fri Feb 19 22:44:34 2010 +0200 +++ b/sipvoipprovider/src/svpsessionbase.cpp Fri Mar 12 15:42:09 2010 +0200 @@ -1540,6 +1540,8 @@ { SVPDEBUG1( "CSVPSessionBase::HandleStreamStateChange(aStream,aSink) In" ) + CMceSession::TState sessionState = CMceSession::ETerminated; + if ( &aStream ) { SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSink) stream state=%d", @@ -1550,8 +1552,8 @@ if ( &aStream && aStream.Session() ) { - SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSink) session state=%d", - aStream.Session()->State() ) + sessionState = aStream.Session()->State(); + SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSink) session state=%d", sessionState ) } if ( &aSink ) @@ -1560,7 +1562,7 @@ aSink.IsEnabled() ) if ( HasHoldController() && ESVPConnected == HoldController().HoldState() && - !aSink.IsEnabled() && CMceSession::EEstablished == aStream.Session()->State() ) + !aSink.IsEnabled() && CMceSession::EEstablished == sessionState ) { // Hold state is connected but sink is disabled -> try enable after a while SVPDEBUG1( "CSVPSessionBase::HandleStreamStateChange - Resume ICMP, Sink" ) @@ -1580,6 +1582,8 @@ { SVPDEBUG1( "CSVPSessionBase::HandleStreamStateChange(aStream,aSource) In" ) + CMceSession::TState sessionState = CMceSession::ETerminated; + if ( &aStream ) { SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSource) stream state=%d", @@ -1590,8 +1594,8 @@ if ( &aStream && aStream.Session() ) { - SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSource) session state=%d", - aStream.Session()->State() ) + sessionState = aStream.Session()->State(); + SVPDEBUG2( "CSVPSessionBase::HandleStreamStateChange(aStream,aSource) session state=%d", sessionState ) } if ( &aSource ) @@ -1600,7 +1604,7 @@ aSource.IsEnabled() ) if ( HasHoldController() && ESVPConnected == HoldController().HoldState() && - !aSource.IsEnabled() && CMceSession::EEstablished == aStream.Session()->State() ) + !aSource.IsEnabled() && CMceSession::EEstablished == sessionState ) { // Hold state is connected but source is disabled -> try enable after a while SVPDEBUG1( "CSVPSessionBase::HandleStreamStateChange - Resume ICMP, Source" )