summaryrefslogtreecommitdiff
path: root/lib/dvb/decoder.cpp
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2011-02-12 17:14:20 (GMT)
committerghost <andreas.monzner@multimedia-labs.de>2011-02-12 17:14:20 (GMT)
commit6b01e6e3bc442668ae2b358130a8d9c12f4f8b60 (patch)
tree201985f568e5da7152989844baf8d1858517fbea /lib/dvb/decoder.cpp
parentc9839b5bbd097c884d979e43531ddbbcca9fa162 (diff)
new drivers have shorter clip input buffers.. so we have to handle short writes or we have to use blocking mode.. the 2nd is easier ;)
Diffstat (limited to 'lib/dvb/decoder.cpp')
-rw-r--r--lib/dvb/decoder.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp
index 88cd3ee..45dde8b 100644
--- a/lib/dvb/decoder.cpp
+++ b/lib/dvb/decoder.cpp
@@ -1299,10 +1299,11 @@ RESULT eTSMPEGDecoder::showSinglePic(const char *filename)
if (f >= 0)
{
struct stat s;
+ size_t written=0;
fstat(f, &s);
if (m_video_clip_fd == -1)
- m_video_clip_fd = open("/dev/dvb/adapter0/video0", O_WRONLY|O_NONBLOCK);
- if (m_video_clip_fd >= 0)
+ m_video_clip_fd = open("/dev/dvb/adapter0/video0", O_WRONLY);
+ while (m_video_clip_fd >= 0)
{
bool seq_end_avail = false;
size_t pos=0;