equal
deleted
inserted
replaced
1 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of the License "Eclipse Public License v1.0" |
4 // under the terms of the License "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
859 Signal(); |
859 Signal(); |
860 |
860 |
861 // release threads doing CancelAll() |
861 // release threads doing CancelAll() |
862 waiters->Signal(); |
862 waiters->Signal(); |
863 } |
863 } |
864 else if (!error && iController->IsIdle(*this) && !iReqQ.IsEmpty() && !iDfc.Queued()) |
864 // (iController may be NULL here if the channel was closed in the client callback.) |
|
865 else if (!error && |
|
866 iController && iController->IsIdle(*this) && |
|
867 !iReqQ.IsEmpty() && |
|
868 !iDfc.Queued()) |
865 { |
869 { |
866 // Wait for a bit. If during that time the condition goes away then it |
870 // Wait for a bit. If during that time the condition goes away then it |
867 // was a 'spurious missed interrupt', in which case we just do nothing. |
871 // was a 'spurious missed interrupt', in which case we just do nothing. |
868 TBool spurious = EFalse; |
872 TBool spurious = EFalse; |
869 const TUint32 nano_secs_per_loop = 1000 * 1000; // 1ms |
873 const TUint32 nano_secs_per_loop = 1000 * 1000; // 1ms |