From: Howard Chu Date: Tue, 30 Oct 2012 15:28:15 +0000 (-0700) Subject: Fix rare infinite loop on EOF X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=dc1ddd3b3f567c036f6909af7f1bfdc135331439;p=rtmpdump Fix rare infinite loop on EOF reported by Matt Robison --- diff --git a/rtmpdump.c b/rtmpdump.c index 2b30eb2..13741a7 100644 --- a/rtmpdump.c +++ b/rtmpdump.c @@ -580,12 +580,14 @@ Download(RTMP * rtmp, // connected RTMP object } } } -#ifdef _DEBUG else { +#ifdef _DEBUG RTMP_Log(RTMP_LOGDEBUG, "zero read!"); - } #endif + if (rtmp->m_read.status == RTMP_READ_EOF) + break; + } } while (!RTMP_ctrlC && nRead > -1 && RTMP_IsConnected(rtmp) && !RTMP_IsTimedout(rtmp));