diff --git a/src/transport/xqc_engine.c b/src/transport/xqc_engine.c index 75c0e961..6f0e87c0 100644 --- a/src/transport/xqc_engine.c +++ b/src/transport/xqc_engine.c @@ -739,7 +739,7 @@ xqc_engine_process_conn(xqc_connection_t *conn, xqc_usec_t now) { conn->conn_flag |= XQC_CONN_FLAG_MP_READY_NOTIFY; conn->conn_flag &= ~XQC_CONN_FLAG_MP_WAIT_MP_READY; - } else if (ret != XQC_OK) { + } else if (ret != XQC_OK && xqc_conn_check_handshake_completed(conn)) { /* not enough cid for new path id */ uint64_t path_id = conn->create_path_count; xqc_cid_set_inner_t *dcid_inner_set = xqc_get_path_cid_set(&conn->dcid_set, path_id);