m_sStreamPlaying = NULL;
Close();
- m_libRTMP.Free(m_rtmp);
+ if (m_rtmp)
+ m_libRTMP.Free(m_rtmp);
m_rtmp = NULL;
m_bPaused = false;
}
m_sStreamPlaying = NULL;
}
- if (!CDVDInputStream::Open(strFile, "video/x-flv"))
+ if (!m_rtmp || !CDVDInputStream::Open(strFile, "video/x-flv"))
return false;
CSingleLock lock(m_RTMPSection);
CSingleLock lock(m_RTMPSection);
CDVDInputStream::Close();
- m_libRTMP.Close(m_rtmp);
+ if (m_rtmp)
+ m_libRTMP.Close(m_rtmp);
m_optionvalues.clear();
m_eof = true;
int CDVDInputStreamRTMP::Read(uint8_t* buf, int buf_size)
{
+ if (!m_rtmp)
+ return -1;
+
int i = m_libRTMP.Read(m_rtmp, (char *)buf, buf_size);
if (i < 0)
m_eof = true;
CLog::Log(LOGNOTICE, "RTMP Seek to %i requested", iTimeInMsec);
CSingleLock lock(m_RTMPSection);
- if (m_libRTMP.SendSeek(m_rtmp, iTimeInMsec))
+ if (m_rtmp && m_libRTMP.SendSeek(m_rtmp, iTimeInMsec))
return true;
return false;
CLog::Log(LOGNOTICE, "RTMP Pause %s requested", m_bPaused ? "TRUE" : "FALSE");
- m_libRTMP.Pause(m_rtmp, m_bPaused);
+ if (m_rtmp)
+ m_libRTMP.Pause(m_rtmp, m_bPaused);
return true;
}