diff --git a/src/shared/rtsp.c b/src/shared/rtsp.c index d4f10a2..7d4d52a 100644 --- a/src/shared/rtsp.c +++ b/src/shared/rtsp.c @@ -1588,8 +1588,13 @@ int rtsp_message_readv(struct rtsp_message *m, for ( ; *types; ++types) { r = rtsp_message_readv_basic(m, *types, args); - if (r < 0) + if (r < 0) { + if (m->iter_body) + rtsp_message_exit_body(m); + if (m->iter_header) + rtsp_message_exit_header(m); return r; + } } return 0;