From c70fadd66fdba83c3fa30dac43ee43f201683f8e Mon Sep 17 00:00:00 2001 From: Thulinma Date: Mon, 22 May 2023 02:51:31 +0200 Subject: [PATCH] Fixed infinite loop in MP4 analyser when reaching end of file mid-box --- src/analysers/analyser_mp4.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/analysers/analyser_mp4.cpp b/src/analysers/analyser_mp4.cpp index 4ac928e4..7fdc0d8e 100644 --- a/src/analysers/analyser_mp4.cpp +++ b/src/analysers/analyser_mp4.cpp @@ -18,7 +18,10 @@ bool AnalyserMP4::parsePacket(){ for (uint64_t i = mp4Buffer.size(); i < needed; ++i){ mp4Buffer += std::cin.get(); ++curPos; - if (!std::cin.good()){mp4Buffer.erase(mp4Buffer.size() - 1, 1);} + if (!std::cin.good()){ + mp4Buffer.erase(mp4Buffer.size() - 1, 1); + break; + } } }