diff --git a/mesh/net.c b/mesh/net.c
index f07de4d..33b4981 100644
--- a/mesh/net.c
+++ b/mesh/net.c
szmic, seq & SEQ_ZERO_MASK,
msg, msg_len);
- /* If successfully enqued or delivered
- * to Unicast address, we are done
+ /* If addressed to a unicast address and successfully enqueued,
+ * or delivered to one of our Unicast addresses we are done
*/
- if (result || src == dst ||
+ if ((result && IS_UNICAST(dst)) || src == dst ||
(dst >= net->src_addr && dst <= net->last_addr)) {
/* Adjust our seq_num for "virtual" delivery */
net->seq_num += seg_max;