Ticket #6708: chanset.diff

File chanset.diff, 1.6 KB (added by richard.ablewhite@…, 11 years ago)

A patch

  • libs/libmythtv/tv_play.cpp

     
    61336133    // If we are switching to a channel not on the current recorder
    61346134    // we need to find the next free recorder with that channel.
    61356135    QStringList reclist;
     6136    int cardinputid = -1;
     6137    QString prevstartchan = ctx->pseudoLiveTVRec->chanstr;
     6138
    61366139    if (!channum.isEmpty())
    61376140        reclist = ChannelUtil::GetValidRecorderList(chanid, channum);
    61386141    else if (inputid)
     
    61466149        {
    61476150            QString inputname("");
    61486151            int cardid = testrec->GetRecorderNumber();
    6149             int cardinputid = CardUtil::GetCardInputID(
     6152            cardinputid = CardUtil::GetCardInputID(
    61506153                    cardid, channum, inputname);
    61516154
    61526155            VERBOSE(VB_CHANNEL, LOC + "Setting startchan: " +
     
    62006203        {
    62016204            VERBOSE(VB_IMPORTANT, LOC_ERR +
    62026205                    "LiveTV not successfully restarted");
     6206            if(cardinputid >= 0 && !prevstartchan.isEmpty()) CardUtil::SetStartChannel(cardinputid, prevstartchan);
    62036207            RestoreScreenSaver(ctx);
    62046208            ctx->SetRecorder(NULL);
    62056209            SetErrored(ctx);
     
    62486252        {
    62496253            VERBOSE(VB_IMPORTANT, LOC_ERR +
    62506254                    "LiveTV not successfully started");
     6255            if(cardinputid >= 0 && !prevstartchan.isEmpty()) CardUtil::SetStartChannel(cardinputid, prevstartchan);
    62516256            RestoreScreenSaver(ctx);
    62526257            ctx->SetRecorder(NULL);
    62536258            SetErrored(ctx);