stop_working() already frees the bufferevents, so don't double-free.
@@ -144,7 +144,6 @@ static void dpconn_event_cb(struct bufferevent *bev, short events,
} else if (events & (BEV_EVENT_EOF|BEV_EVENT_ERROR)) {
fprintf(stderr, "Closing connection to dpnode\n");
stop_working();
- bufferevent_free(bev);
}