Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 58cebef081c94cb5f88b9fe2fbddfdc8 > files > 36

openais-0.80.6-28.el5_6.1.src.rpm

Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c	(revision 2129)
+++ exec/totemsrp.c	(revision 2130)
@@ -1294,6 +1294,8 @@
 {
 	if (instance->old_ring_state_saved == 0) {
 		instance->old_ring_state_saved = 1;
+		memcpy (&instance->my_old_ring_id, &instance->my_ring_id,
+			sizeof (struct memb_ring_id));
 		instance->old_ring_state_aru = instance->my_aru;
 		instance->old_ring_state_high_seq_received = instance->my_high_seq_received;
 		log_printf (instance->totemsrp_log_level_notice,
@@ -1319,7 +1321,9 @@
 static void ring_state_restore (struct totemsrp_instance *instance)
 {
 	if (instance->old_ring_state_saved) {
-		totemip_zero_set(&instance->my_ring_id.rep);
+		memcpy (&instance->my_ring_id, &instance->my_old_ring_id,
+			sizeof (struct memb_ring_id));
+
 		instance->my_aru = instance->old_ring_state_aru;
 		instance->my_high_seq_received = instance->old_ring_state_high_seq_received;
 		log_printf (instance->totemsrp_log_level_notice,
@@ -1330,6 +1334,8 @@
 
 static void old_ring_state_reset (struct totemsrp_instance *instance)
 {
+	log_printf (instance->totemsrp_log_level_debug,
+		"Resetting old ring state\n");
 	instance->old_ring_state_saved = 0;
 }