diff --git a/src/core/thread/mesh_forwarder.cpp b/src/core/thread/mesh_forwarder.cpp index 0776d6f52..49d24a0d0 100644 --- a/src/core/thread/mesh_forwarder.cpp +++ b/src/core/thread/mesh_forwarder.cpp @@ -521,9 +521,10 @@ ThreadError MeshForwarder::UpdateIp6Route(Message &aMessage) else { mNetworkData.RouteLookup(ip6Header.GetSource(), ip6Header.GetDestination(), NULL, &mMeshDest); - assert(mMeshDest != Mac::kShortAddrInvalid); } + VerifyOrExit(mMeshDest != Mac::kShortAddrInvalid, error = kThreadError_Drop); + if (mMle.GetNeighbor(mMeshDest) != NULL) { // destination is neighbor