SHOW:
|
|
- or go back to the newest paste.
1 | diff --git a/mythtv/programs/mythbackend/mainserver.cpp b/mythtv/programs/mythbackend/mainserver.cpp | |
2 | index dd566d9..6cc4dd0 100644 | |
3 | --- a/mythtv/programs/mythbackend/mainserver.cpp | |
4 | +++ b/mythtv/programs/mythbackend/mainserver.cpp | |
5 | @@ -2418,10 +2418,25 @@ void MainServer::HandleCheckRecordingActive(QStringList &slist, | |
6 | ||
7 | void MainServer::HandleStopRecording(QStringList &slist, PlaybackSock *pbs) | |
8 | { | |
9 | + ProgramList schedList; | |
10 | + bool hasConflicts = false; | |
11 | + LoadFromScheduler(schedList, hasConflicts); | |
12 | + | |
13 | QStringList::const_iterator it = slist.begin() + 1; | |
14 | RecordingInfo recinfo(it, slist.end()); | |
15 | if (recinfo.GetChanID()) | |
16 | + { | |
17 | + // Stop recording may have been called for the same program on | |
18 | + // different channel in the guide, we need to find the actual channel | |
19 | + // that the recording is occurring on | |
20 | + for( uint n = 0; n < schedList.size(); n++) | |
21 | + { | |
22 | + ProgramInfo *pInfo = schedList[n]; | |
23 | - | + if (recinfo.IsSameProgram(pInfo)) |
23 | + | + if ((pInfo->recstatus == rsTuning || |
24 | pInfo->recstatus == rsRecording) | |
25 | && recinfo.IsSameProgram(pInfo)) | |
26 | + recinfo.chanid = pInfo->chanid; | |
27 | + } | |
28 | DoHandleStopRecording(recinfo, pbs); | |
29 | + } | |
30 | } | |
31 | ||
32 | void MainServer::DoHandleStopRecording( |