diff --git a/[refs] b/[refs] index a0c6725fa038..33fe42f3b74b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3175bd9add570f3b5c06877369897b334556a2ff +refs/heads/master: dff10e9e637663c8c5dd0bae1a8f0e899cbb4a36 diff --git a/trunk/net/tipc/port.c b/trunk/net/tipc/port.c index d91efc69e6f9..ba3268b8da42 100644 --- a/trunk/net/tipc/port.c +++ b/trunk/net/tipc/port.c @@ -400,15 +400,16 @@ int tipc_reject_msg(struct sk_buff *buf, u32 err) /* send self-abort message when rejecting on a connected port */ if (msg_connected(msg)) { - struct sk_buff *abuf = NULL; struct tipc_port *p_ptr = tipc_port_lock(msg_destport(msg)); if (p_ptr) { + struct sk_buff *abuf = NULL; + if (p_ptr->connected) abuf = port_build_self_abort_msg(p_ptr, err); tipc_port_unlock(p_ptr); + tipc_net_route_msg(abuf); } - tipc_net_route_msg(abuf); } /* send returned message & dispose of rejected message */