From 45460b526c1fec7605481d758ba59c41350df0cb Mon Sep 17 00:00:00 2001 From: Jean-Yves Avenard Date: Sun, 7 Jul 2013 16:53:30 +1000 Subject: [PATCH] Add method to detect if RingBuffer construction actually failed --- mythtv/libs/libmythtv/ringbuffer.cpp | 8 ++++++++ mythtv/libs/libmythtv/ringbuffer.h | 3 +++ 2 files changed, 11 insertions(+) diff --git a/mythtv/libs/libmythtv/ringbuffer.cpp b/mythtv/libs/libmythtv/ringbuffer.cpp index 59a92865ca9..1255c47aafb 100644 --- a/mythtv/libs/libmythtv/ringbuffer.cpp +++ b/mythtv/libs/libmythtv/ringbuffer.cpp @@ -1582,6 +1582,14 @@ QString RingBuffer::GetSubtitleFilename(void) const return tmp; } +QString RingBuffer::GetLastError(void) const +{ + rwlock.lockForRead(); + QString tmp = lastError; + rwlock.unlock(); + return tmp; +} + /** \fn RingBuffer::GetWritePosition(void) const * \brief Returns how far into a ThreadedFileWriter file we have written. */ diff --git a/mythtv/libs/libmythtv/ringbuffer.h b/mythtv/libs/libmythtv/ringbuffer.h index b4ead456acb..2a80ef1ccf8 100644 --- a/mythtv/libs/libmythtv/ringbuffer.h +++ b/mythtv/libs/libmythtv/ringbuffer.h @@ -66,6 +66,8 @@ class MTV_PUBLIC RingBuffer : protected MThread QString GetSafeFilename(void) { return safefilename; } QString GetFilename(void) const; QString GetSubtitleFilename(void) const; + QString GetLastError(void) const; + /// Returns value of stopreads /// \sa StartReads(void), StopReads(void) bool GetStopReads(void) const { return stopreads; } @@ -204,6 +206,7 @@ class MTV_PUBLIC RingBuffer : protected MThread QString safefilename; // unprotected (for debugging) QString filename; // protected by rwlock QString subtitlefilename; // protected by rwlock + QString lastError; // protected by rwlock ThreadedFileWriter *tfw; // protected by rwlock int fd2; // protected by rwlock