aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/service/iservice.h2
-rw-r--r--lib/service/servicedvb.cpp5
-rw-r--r--lib/service/servicedvb.h2
3 files changed, 5 insertions, 4 deletions
diff --git a/lib/service/iservice.h b/lib/service/iservice.h
index c477f11d..c35313f0 100644
--- a/lib/service/iservice.h
+++ b/lib/service/iservice.h
@@ -593,7 +593,7 @@ class iTimeshiftService: public iObject
#endif
public:
virtual RESULT startTimeshift()=0;
- virtual RESULT stopTimeshift()=0;
+ virtual RESULT stopTimeshift(bool swToLive=true)=0;
virtual int isTimeshiftActive()=0;
/* this essentially seeks to the relative end of the timeshift buffer */
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp
index 1a3cb0e0..558bf0c2 100644
--- a/lib/service/servicedvb.cpp
+++ b/lib/service/servicedvb.cpp
@@ -2085,12 +2085,13 @@ RESULT eDVBServicePlay::startTimeshift()
return 0;
}
-RESULT eDVBServicePlay::stopTimeshift()
+RESULT eDVBServicePlay::stopTimeshift(bool swToLive)
{
if (!m_timeshift_enabled)
return -1;
- switchToLive();
+ if (swToLive)
+ switchToLive();
m_timeshift_enabled = 0;
diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h
index 42647b92..1262836e 100644
--- a/lib/service/servicedvb.h
+++ b/lib/service/servicedvb.h
@@ -159,7 +159,7 @@ public:
// iTimeshiftService
RESULT startTimeshift();
- RESULT stopTimeshift();
+ RESULT stopTimeshift(bool swToLive=true);
int isTimeshiftActive();
RESULT activateTimeshift();