diff options
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/socket.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/tipc/socket.c b/net/tipc/socket.c index b3b72d8e9543..ea61c32f6b80 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c | |||
@@ -2756,8 +2756,10 @@ static int tipc_sk_join(struct tipc_sock *tsk, struct tipc_group_req *mreq) | |||
2756 | seq.upper = seq.lower; | 2756 | seq.upper = seq.lower; |
2757 | tipc_nametbl_build_group(net, grp, mreq->type, domain); | 2757 | tipc_nametbl_build_group(net, grp, mreq->type, domain); |
2758 | rc = tipc_sk_publish(tsk, mreq->scope, &seq); | 2758 | rc = tipc_sk_publish(tsk, mreq->scope, &seq); |
2759 | if (rc) | 2759 | if (rc) { |
2760 | tipc_group_delete(net, grp); | 2760 | tipc_group_delete(net, grp); |
2761 | tsk->group = NULL; | ||
2762 | } | ||
2761 | 2763 | ||
2762 | /* Eliminate any risk that a broadcast overtakes the sent JOIN */ | 2764 | /* Eliminate any risk that a broadcast overtakes the sent JOIN */ |
2763 | tsk->mc_method.rcast = true; | 2765 | tsk->mc_method.rcast = true; |