Ticket #10383: 10383.patch

File 10383.patch, 4.5 KB (added by lomion@…, 7 years ago)
  • mythtv/libs/libmythmetadata/metadatadownload.cpp

    diff --git a/mythtv/libs/libmythmetadata/metadatadownload.cpp b/mythtv/libs/libmythmetadata/metadatadownload.cpp
    index 0a418ba..5adce07 100644
    a b void MetadataDownload::run() 
    9090        {
    9191            if (lookup->GetSubtype() == kProbableTelevision)
    9292            {
    93                 if (lookup->GetSeason() > 0 || lookup->GetEpisode() > 0)
     93                if ( lookup->GetSeason() > 0 || lookup->GetEpisode() > 0)
    9494                    list = handleTelevision(lookup);
    9595                else if (!lookup->GetSubtitle().isEmpty())
    9696                    list = handleVideoUndetermined(lookup);
    bool MetadataDownload::findBestMatch(MetadataLookupList list, 
    213213
    214214MetadataLookupList MetadataDownload::runGrabber(QString cmd, QStringList args,
    215215                                                MetadataLookup* lookup,
     216                                                LookupType lookuptype,
    216217                                                bool passseas)
    217218{
    218219    MythSystem grabber(cmd, args, kMSNoRunShell | kMSStdOut | kMSBuffered);
    MetadataLookupList MetadataDownload::runGrabber(QString cmd, QStringList args, 
    235236        {
    236237            MetadataLookup *tmp = ParseMetadataItem(item, lookup,
    237238                passseas);
     239            tmp->SetSubtype(lookuptype);
    238240            list.append(tmp);
    239241            item = item.nextSiblingElement("item");
    240242        }
    MetadataLookupList MetadataDownload::handleGame(MetadataLookup* lookup) 
    469471        args.append(QString("-D"));
    470472        args.append(lookup->GetInetref());
    471473    }
    472     list = runGrabber(cmd, args, lookup);
     474    list = runGrabber(cmd, args, lookup, kProbableGame);
    473475
    474476    return list;
    475477}
    MetadataLookupList MetadataDownload::handleMovie(MetadataLookup* lookup) 
    513515            args.append(QString("-D"));
    514516            args.append(lookup->GetInetref());
    515517        }
    516         list = runGrabber(cmd, args, lookup);
     518        list = runGrabber(cmd, args, lookup, kProbableMovie);
     519
    517520    }
    518521    else if (!mxml.isEmpty())
    519522        list = readMXML(mxml, lookup);
    MetadataLookupList MetadataDownload::handleTelevision(MetadataLookup* lookup) 
    530533    QString cmd = GetTelevisionGrabber();
    531534
    532535    QStringList args;
     536
    533537    args.append(QString("-l")); // Language Flag
    534538    args.append(gCoreContext->GetLanguage()); // UI Language
    535539
    MetadataLookupList MetadataDownload::handleTelevision(MetadataLookup* lookup) 
    567571        args.append(QString("-C"));
    568572        args.append(lookup->GetCollectionref());
    569573    }
    570     list = runGrabber(cmd, args, lookup);
     574    list = runGrabber(cmd, args, lookup, kProbableTelevision);
    571575
    572576    // Collection Fallback
    573577    // If the lookup allows generic metadata, and the specific
    MetadataLookupList MetadataDownload::handleVideoUndetermined( 
    610614    args.append(subtitle);
    611615
    612616    // Try to do a title/subtitle lookup
    613     list = runGrabber(cmd, args, lookup, false);
     617    list = runGrabber(cmd, args, lookup, kProbableTelevision, false);
    614618
    615619    if (list.count() == 1)
    616620        list.at(0)->SetStep(kLookupData);
    MetadataLookupList MetadataDownload::handleRecordingGeneric( 
    649653        lookup->SetEpisode(1);
    650654    }
    651655
    652     list = runGrabber(cmd, args, lookup, true);
     656    list = runGrabber(cmd, args, lookup, kProbableTelevision, true);
    653657
    654658    if (list.count() == 1)
    655659    {
  • mythtv/libs/libmythmetadata/metadatadownload.h

    diff --git a/mythtv/libs/libmythmetadata/metadatadownload.h b/mythtv/libs/libmythmetadata/metadatadownload.h
    index 174814a..e211447 100644
    a b class META_PUBLIC MetadataDownload : public MThread 
    7171                                      QString originaltitle);
    7272    MetadataLookupList  runGrabber(QString cmd, QStringList args,
    7373                                   MetadataLookup* lookup,
     74                                   LookupType lookuptype,
    7475                                   bool passseas = true);
    7576    MetadataLookupList  readMXML(QString MXMLpath,
    7677                                 MetadataLookup* lookup,
  • mythtv/libs/libmythtv/mythplayer.cpp

    diff --git a/mythtv/libs/libmythtv/mythplayer.cpp b/mythtv/libs/libmythtv/mythplayer.cpp
    index 1261340..03ff518 100644
    a b void MythPlayer::SwitchToProgram(void) 
    24492449    if (!pginfo)
    24502450        return;
    24512451
     2452    discontinuity = true;
     2453
    24522454    bool newIsDummy = player_ctx->tvchain->GetCardType(newid) == "DUMMY";
    24532455
    24542456    SetPlayingInfo(*pginfo);