summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/decoder/plugins/MadDecoderPlugin.cxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/decoder/plugins/MadDecoderPlugin.cxx b/src/decoder/plugins/MadDecoderPlugin.cxx
index 7cc57b245..a73716cb1 100644
--- a/src/decoder/plugins/MadDecoderPlugin.cxx
+++ b/src/decoder/plugins/MadDecoderPlugin.cxx
@@ -207,6 +207,8 @@ private:
*/
bool HandleCurrentFrame() noexcept;
+ bool LoadNextFrame() noexcept;
+
bool Read() noexcept;
};
@@ -965,11 +967,8 @@ MadDecoder::HandleCurrentFrame() noexcept
}
inline bool
-MadDecoder::Read() noexcept
+MadDecoder::LoadNextFrame() noexcept
{
- if (!HandleCurrentFrame())
- return false;
-
while (true) {
MadDecoderAction ret;
do {
@@ -999,6 +998,13 @@ MadDecoder::Read() noexcept
}
}
+inline bool
+MadDecoder::Read() noexcept
+{
+ return HandleCurrentFrame() &&
+ LoadNextFrame();
+}
+
inline void
MadDecoder::RunDecoder() noexcept
{