summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd.simons@collabora.co.uk>2008-02-29 17:57:44 +0000
committerSjoerd Simons <sjoerd.simons@collabora.co.uk>2008-02-29 17:57:44 +0000
commitbb570b6c210e587c9651342ecc4fbe116a1434cf (patch)
tree508930fa49f1c1c15b7862c434a353ca66cffad0
parent9ea9696c4ec1dcd05e18930acd888d3cdb96e480 (diff)
GibberRMulticastSender: Fix repairing when the node has moved to pending_removal
-rw-r--r--lib/gibber/gibber-r-multicast-sender.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/gibber/gibber-r-multicast-sender.c b/lib/gibber/gibber-r-multicast-sender.c
index f65b2954..d0d856cc 100644
--- a/lib/gibber/gibber-r-multicast-sender.c
+++ b/lib/gibber/gibber-r-multicast-sender.c
@@ -511,15 +511,14 @@ gibber_r_multicast_sender_group_push_packet (
case PACKET_TYPE_REPAIR_REQUEST:
{
GibberRMulticastSender *rsender;
- guint32 sender_id;
+ guint32 sender_id = packet->data.repair_request.sender_id;
guint32 packet_id = packet->data.repair_request.packet_id;
- sender_id = packet->data.repair_request.sender_id;
rsender = gibber_r_multicast_sender_group_lookup (group, sender_id);
g_assert (sender_id != 0);
- if (rsender == NULL ||
+ if (rsender != NULL &&
gibber_r_multicast_sender_repair_request (rsender, packet_id))
{
/* rsender took up the repair request. */