diff --git a/menu_searchedit.c b/menu_searchedit.c index e44e8c8..99c8030 100644 --- a/menu_searchedit.c +++ b/menu_searchedit.c @@ -95,7 +95,8 @@ cMenuEditSearchExt::cMenuEditSearchExt(cSearchExt *SearchExt, bool New, bool Tem SearchActiveModes[2] = strdup(tr("user-defined")); CompareSubtitleModes[0] = strdup(trVDR("no")); CompareSubtitleModes[1] = strdup(tr("if present")); + CompareSubtitleModes[2] = strdup(tr("compare if present")); CompareDateModes[0] = strdup(trVDR("no")); CompareDateModes[1] = strdup(tr("same day")); @@ -379,7 +380,7 @@ void cMenuEditSearchExt::Set() if (data.allowedRepeats > 0) Add(new cMenuEditIntItem(IndentMenuItem(tr("Only repeats within ... days"),2), &data.repeatsWithinDays, 0, 999)); Add(new cMenuEditBoolItem(IndentMenuItem(tr("Compare title"),2), &data.compareTitle, trVDR("no"), trVDR("yes"))); - Add(new cMenuEditStraItem(IndentMenuItem(tr("Compare subtitle"),2), &data.compareSubtitle, 2, CompareSubtitleModes)); + Add(new cMenuEditStraItem(IndentMenuItem(tr("Compare subtitle"),2), &data.compareSubtitle, 3, CompareSubtitleModes)); Add(new cMenuEditBoolItem(IndentMenuItem(tr("Compare summary"),2), &data.compareSummary, trVDR("no"), trVDR("yes"))); if (data.compareSummary) Add(new cMenuEditIntItem(IndentMenuItem(tr("Min. match in %"),3), &data.compareSummaryMatchInPercent, 1, 100)); @@ -451,7 +452,7 @@ cMenuEditSearchExt::~cMenuEditSearchExt() free(DelModes[i]); for(i=0; i<=2; i++) free(SearchActiveModes[i]); - for(i=0; i<=1; i++) + for(i=0; i<=2; i++) free(CompareSubtitleModes[i]); for(i=0; i<=3; i++) free(CompareDateModes[i]); diff --git a/menu_searchedit.h b/menu_searchedit.h index 9bfbf4f..684ffc2 100644 --- a/menu_searchedit.h +++ b/menu_searchedit.h @@ -52,7 +52,7 @@ protected: char *BlacklistModes[4]; char *DelModes[3]; char *SearchActiveModes[3]; - char *CompareSubtitleModes[2]; + char *CompareSubtitleModes[3]; char *CompareDateModes[4]; std::vector contentStringIDs; int useContentDescriptors; diff --git a/recdone.c b/recdone.c index 7270c67..43e8bc1 100644 --- a/recdone.c +++ b/recdone.c @@ -347,7 +347,7 @@ int cRecsDone::GetCountRecordings(const cEvent* event, bool compareTitle, int co } if ((!compareTitle || rTitle == eTitle) && - (!compareSubtitle || (rSubtitle == eSubtitle && rSubtitle !="")) && + (!compareSubtitle || (rSubtitle == eSubtitle && (rSubtitle !="" || compareSubtitle == 2))) && (!compareSummary || DescriptionMatches(eRawDescr.c_str(), rRawDescr.c_str(), matchLimit)) && (catvaluesAvoidRepeat == 0 || CatValuesMatch(catvaluesAvoidRepeat, rDescr, eDescr)) && (compareExpression.size() == 0 || MatchesInExpression(compareExpression, recDone, event)))