Sorry, here's the patch again in unified diff format.
Jack Porter wrote:
Hi,
When using Browse mode while watching live tv, if you pass a channel for which there is no current program data, junk is displayed instead of the channel name/number.
This patch makes ProgramInfo::GetProgramAtDateTime() check if ProgramList::FromProgram() returned any results, and if not it looks up just the channel data.
Cheers Jack
-- Jack Porter Seoul [EMAIL PROTECTED] South Korea
Index: mythtv/libs/libmythtv/programinfo.cpp
===================================================================
RCS file: /var/lib/mythcvs/mythtv/libs/libmythtv/programinfo.cpp,v
retrieving revision 1.180
diff -u -r1.180 programinfo.cpp
--- mythtv/libs/libmythtv/programinfo.cpp 26 Dec 2004 02:55:30 -0000
1.180
+++ mythtv/libs/libmythtv/programinfo.cpp 30 Dec 2004 02:16:41 -0000
@@ -503,7 +503,55 @@
schedList.FromScheduler();
progList.FromProgram(db, querystr, schedList);
- return progList.take(0);
+ if (!progList.isEmpty())
+ {
+ return progList.take(0);
+ }
+ else
+ {
+ ProgramInfo *p = new ProgramInfo;
+ QString querystr = QString("SELECT chanid, channum, callsign, name, "
+ "commfree, outputfilters "
+ "FROM channel "
+ "WHERE chanid = \"%1\";")
+ .arg(channel);
+
+ QSqlQuery query(QString::null, db);
+ query.prepare(querystr);
+
+ if (!query.exec() || !query.isActive())
+ {
+ MythContext::DBError("ProgramInfo::GetProgramAtDateTime",
+ query.executedQuery());
+ return p;
+ }
+
+ if (query.next())
+ {
+ p->chanid = query.value(0).toString();
+ p->startts = dtime;
+ p->endts = dtime;
+ p->recstartts = p->startts;
+ p->recendts = p->endts;
+ p->lastmodified = p->startts;
+ p->title = gContext->GetSetting("UnknownTitle");
+ p->subtitle = "";
+ p->description = "";
+ p->category = "";
+ p->chanstr = query.value(1).toString();
+ p->chansign = QString::fromUtf8(query.value(2).toString());
+ p->channame = QString::fromUtf8(query.value(3).toString());
+ p->repeat = 0;
+ p->chancommfree = query.value(4).toInt();
+ p->chanOutputFilters = query.value(5).toString();
+ p->seriesid = "";
+ p->programid = "";
+ p->year = "";
+ p->stars = 0.f;
+ }
+
+ return p;
+ }
}
ProgramInfo *ProgramInfo::GetProgramFromRecorded(QSqlDatabase *db,
_______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
