diff --git a/src/tcp_reassembly/tcp_reassembly.cpp b/src/tcp_reassembly/tcp_reassembly.cpp index f7cc978..7883522 100644 --- a/src/tcp_reassembly/tcp_reassembly.cpp +++ b/src/tcp_reassembly/tcp_reassembly.cpp @@ -167,6 +167,8 @@ struct tcp_segment *tcp_reassembly_pop(struct tcp_reassembly *assembler) node = interval_tree_iter_next(node, assembler->recv_next, assembler->recv_next); } + if(oldest==NULL)return NULL; + list_del(&oldest->lru); interval_tree_remove(&oldest->node, &assembler->root);