diff --git a/src/mesh/Router.cpp b/src/mesh/Router.cpp index 4790ff17e..b5a34a801 100644 --- a/src/mesh/Router.cpp +++ b/src/mesh/Router.cpp @@ -44,7 +44,7 @@ void Router::loop() /** * Send a packet on a suitable interface. This routine will * later free() the packet to pool. This routine is not allowed to stall. - * If the txmit queue is full it might return an error + * If the txmit queue is full it might return an error. */ ErrorCode Router::send(MeshPacket *p) { @@ -53,6 +53,7 @@ ErrorCode Router::send(MeshPacket *p) return iface->send(p); } else { DEBUG_MSG("Dropping packet - no interfaces - fr=0x%x,to=0x%x,id=%d\n", p->from, p->to, p->id); + packetPool.release(p); return ERRNO_NO_INTERFACES; } }