Ticket #6280: livetv_pseudoRec_fixes.diff

File livetv_pseudoRec_fixes.diff, 1.8 KB (added by Shane Shrybman, 12 years ago)
  • libs/libmythtv/tv_play.cpp

     
    60226022
    60236023    if (testrec && testrec->IsValidRecorder())
    60246024    {
     6025        // Switching cards so clear the pseudoLiveTVState.
     6026        ctx->SetPseudoLiveTV(NULL, kPseudoNormalLiveTV);
     6027
    60256028        PlayerContext *mctx = GetPlayer(ctx, 0);
    60266029        if (mctx != ctx)
    60276030            PIPRemovePlayer(mctx, ctx);
     
    64006403        if (HasQueuedInput())
    64016404            DoArbSeek(ctx, ARBSEEK_FORWARD);
    64026405    }
    6403     else if (StateIsLiveTV(GetState(ctx)) &&
    6404              !ctx->pseudoLiveTVState)
     6406    else if (StateIsLiveTV(GetState(ctx)))
    64056407    {
    64066408        QString channum = GetQueuedChanNum();
    64076409        QString chaninput = GetQueuedInput();
     
    64966498        channum = ChannelUtil::GetChanNum(chanid);
    64976499    }
    64986500
     6501    bool getit = false;
    64996502    if (ctx->recorder)
    65006503    {
    6501         bool getit = false;
    6502 
    6503         if (chanid)
     6504        if (ctx->pseudoLiveTVState == kPseudoRecording)
    65046505        {
     6506            getit = true;
     6507        }
     6508        else if (chanid)
     6509        {
    65056510            getit = ctx->recorder->ShouldSwitchToAnotherCard(
    65066511                QString::number(chanid));
    65076512        }
     
    65516556        return;
    65526557    }
    65536558
    6554     if (!ctx->recorder || !ctx->recorder->CheckChannel(channum))
     6559    if (getit || !ctx->recorder || !ctx->recorder->CheckChannel(channum))
    65556560        return;
    65566561
    65576562    ctx->LockDeleteNVP(__FILE__, __LINE__);
     
    73537358    mplexid = (32767 == mplexid) ? 0 : mplexid;
    73547359
    73557360    vector<uint> excluded_cards;
    7356     if (ctx->recorder)
     7361    if (ctx->recorder && ctx->pseudoLiveTVState == kPseudoNormalLiveTV)
    73577362        excluded_cards.push_back(ctx->GetCardID());
    73587363
    73597364    uint sourceid = ChannelUtil::GetSourceIDForChannel(chanid);