diff options
-rw-r--r-- | sys/netinet6/in6_src.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c index a77c8cb..4780f0f 100644 --- a/sys/netinet6/in6_src.c +++ b/sys/netinet6/in6_src.c @@ -256,7 +256,8 @@ in6_selectsrc(dstsock, opts, mopts, ro, laddr, errorp) if (IN6_IS_ADDR_MULTICAST(dst)) { ro->ro_rt = rtalloc1(&((struct route *)ro) ->ro_dst, 0, 0UL); - RT_UNLOCK(ro->ro_rt); + if (ro->ro_rt) + RT_UNLOCK(ro->ro_rt); } else { rtalloc((struct route *)ro); } |