summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2002-02-23 10:43:42 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2002-02-23 10:43:42 +0100
commit645f62fee44496cf4a982c8b7ef24c7a6a4ccc2e (patch)
treef930b2594efe37a5451ae09deb3ea74423bfac5b
parentca31e8759115a5f123d69f2b93d51151a501229b (diff)
downloadvdr-645f62fee44496cf4a982c8b7ef24c7a6a4ccc2e.tar.gz
vdr-645f62fee44496cf4a982c8b7ef24c7a6a4ccc2e.tar.bz2
Fixed the SVDRP GRAB command in case the video device can't be opened
-rw-r--r--CONTRIBUTORS3
-rw-r--r--HISTORY2
-rw-r--r--dvbapi.c9
3 files changed, 10 insertions, 4 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 038dc88d..bbceff25 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -212,3 +212,6 @@ Rainer Zocholl <Usenet-372114@zocki.toppoint.de>
Oleg Assovski <assen@bitcom.msk.ru>
for adding EPG scanning for another 4 days
+
+Adrian Stabiszewski <as@nitegate.de>
+ for fixing the SVDRP GRAB command in case the video device can't be opened
diff --git a/HISTORY b/HISTORY
index 9c4ef52d..1e133b2a 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1018,3 +1018,5 @@ Video Disk Recorder Revision History
from the start time of the recording. In order for this to work the 'active'
parameter of a timer now uses the second bit to indicate that this is an
"instant" recording (see FORMATS for details).
+- Fixed the SVDRP GRAB command in case the video device can't be opened (thanks
+ to Adrian Stabiszewski).
diff --git a/dvbapi.c b/dvbapi.c
index f59b7d74..876fe825 100644
--- a/dvbapi.c
+++ b/dvbapi.c
@@ -7,7 +7,7 @@
* DVD support initially written by Andreas Schultz <aschultz@warp10.net>
* based on dvdplayer-0.5 by Matjaz Thaler <matjaz.thaler@guest.arnes.si>
*
- * $Id: dvbapi.c 1.148 2002/02/16 12:55:33 kls Exp $
+ * $Id: dvbapi.c 1.149 2002/02/23 10:40:55 kls Exp $
*/
//#define DVDDEBUG 1
@@ -2741,9 +2741,9 @@ const cSchedules *cDvbApi::Schedules(cThreadLock *ThreadLock) const
bool cDvbApi::GrabImage(const char *FileName, bool Jpeg, int Quality, int SizeX, int SizeY)
{
- int result = 0;
- int videoDev = OstOpen(DEV_VIDEO, CardIndex(), O_RDWR);
+ int videoDev = OstOpen(DEV_VIDEO, CardIndex(), O_RDWR, true);
if (videoDev >= 0) {
+ int result = 0;
struct video_mbuf mbuf;
result |= ioctl(videoDev, VIDIOCGMBUF, &mbuf);
if (result == 0) {
@@ -2827,8 +2827,9 @@ bool cDvbApi::GrabImage(const char *FileName, bool Jpeg, int Quality, int SizeX,
result |= 1;
}
close(videoDev);
+ return result == 0;
}
- return result == 0;
+ return false;
}
#ifdef DEBUG_OSD