Date: Tuesday, February 21, 2006 @ 17:08:06
Author: gilles
Path: /cvsroot/carob/carob/src
Modified: ControllerConnectPolicy.cpp (1.9 -> 1.10)
simplified/clarified/debug? RRpolicy getController() loop
-----------------------------+
ControllerConnectPolicy.cpp | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
Index: carob/src/ControllerConnectPolicy.cpp
diff -u carob/src/ControllerConnectPolicy.cpp:1.9
carob/src/ControllerConnectPolicy.cpp:1.10
--- carob/src/ControllerConnectPolicy.cpp:1.9 Wed Feb 15 11:03:42 2006
+++ carob/src/ControllerConnectPolicy.cpp Tue Feb 21 17:08:06 2006
@@ -252,16 +252,18 @@
LockScope ls(&policy_CS);
{
LockScope scLs(&suspected_controllers_CS);
- unsigned int testedControllers = 0;
+ unsigned int testedControllers = 0; //unsigned because we compare it to
vector.size()
+ bool lastTestedControllerWasSuspect = false;
do
{
index = (index + 1) % controller_list.size();
+ lastTestedControllerWasSuspect =
isSuspectedOfFailure(controller_list[index]);
testedControllers++;
}
- while (isSuspectedOfFailure(controller_list[index])
+ while (lastTestedControllerWasSuspect
&& testedControllers <= controller_list.size());
- // if there are on more controllers up => exception
- if (testedControllers > controller_list.size())
+ // if there are no more controllers up => exception
+ if (lastTestedControllerWasSuspect)
{
throw NoMoreControllerException(L"All "
+ toWString(suspected_controllers.size())
_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits