changeset 224:3caac3cd359d

Change state first, otherwise failover might re-select the same peer
author Sebastien Decugis <sdecugis@nict.go.jp>
date Tue, 23 Feb 2010 17:19:22 +0900
parents 85dc47afeac7
children 07e5914b48f7
files freeDiameter/p_psm.c
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/freeDiameter/p_psm.c	Tue Feb 23 15:09:48 2010 +0900
+++ b/freeDiameter/p_psm.c	Tue Feb 23 17:19:22 2010 +0900
@@ -192,12 +192,12 @@
 			STATE_STR(new_state),
 			peer->p_hdr.info.pi_diamid);
 	
+	peer->p_hdr.info.runtime.pir_state = new_state;
+	
 	if (old == STATE_OPEN) {
 		CHECK_FCT( leave_open_state(peer) );
 	}
 	
-	peer->p_hdr.info.runtime.pir_state = new_state;
-	
 	if (new_state == STATE_OPEN) {
 		CHECK_FCT( enter_open_state(peer) );
 	}
"Welcome to our mercurial repository"