Found by inspection.
Signed-off-by: Ethan Jackson <[email protected]>
---
lib/rconn.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/lib/rconn.c b/lib/rconn.c
index 56a7e19..759c0cb 100644
--- a/lib/rconn.c
+++ b/lib/rconn.c
@@ -433,6 +433,7 @@ static void
run_ACTIVE(struct rconn *rc)
{
if (timed_out(rc)) {
+ struct ofpbuf *b;
unsigned int base = MAX(rc->last_received, rc->state_entered);
VLOG_DBG("%s: idle %u seconds, sending inactivity probe",
rc->name, (unsigned int) (time_now() - base));
@@ -441,7 +442,10 @@ run_ACTIVE(struct rconn *rc)
* and we don't want to transition back to IDLE if so, because then we
* can end up queuing a packet with vconn == NULL and then *boom*. */
state_transition(rc, S_IDLE);
- rconn_send(rc, make_echo_request(), NULL);
+ b = make_echo_request();
+ if (rconn_send(rc, b, NULL)) {
+ ofpbuf_delete(b);
+ }
return;
}
--
1.7.10
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev