All pastes #385564 Raw Edit

Stuff

public text v1 · immutable
#385564 ·published 2007-03-07 22:25 UTC
rendered paste body
Index: mythtv/programs/mythfilldatabase/filldata.cpp
===================================================================
--- mythtv/programs/mythfilldatabase/filldata.cpp       (revision 12967)
+++ mythtv/programs/mythfilldatabase/filldata.cpp       (working copy)
@@ -382,22 +382,24 @@
     int total_sources = sourcelist.size();
     int source_channels = 0;

-    query.exec(QString("SELECT MAX(endtime) FROM program WHERE manualid=0;"));
-    if (query.isActive() && query.size() > 0)
-    {
-        query.next();
-
-        if (!query.isNull(0))
-            GuideDataBefore = QDateTime::fromString(query.value(0).toString(),
-                                                    Qt::ISODate);
-    }
-
     QString sidStr = QString("Updating source #%1 (%2) with grabber %3");

     need_post_grab_proc = false;

     for (it = sourcelist.begin(); it != sourcelist.end(); ++it)
     {
+        query.prepare("SELECT MAX(endtime) FROM program p LEFT JOIN channel c ON p.chanid=c.chanid WHERE c.sourceid= :SRCID");
+        query.bindValue(":SRCID", (*it).id);
+        query.exec();
+        if (query.isActive() && query.size() > 0)
+        {
+            query.next();
+
+            if (!query.isNull(0))
+                GuideDataBefore = QDateTime::fromString(query.value(0).toString(),
+                                                        Qt::ISODate);
+        }
+
         channel_update_run = false;
         endofdata = false;

@@ -823,7 +825,9 @@
     if (only_update_channels && !need_post_grab_proc)
         return true;

-    query.exec(QString("SELECT MAX(endtime) FROM program WHERE manualid=0;"));
+    query.prepare("SELECT MAX(endtime) FROM program p LEFT JOIN channel c ON p.chanid=c.chanid WHERE c.sourceid= :SRCID");
+    query.bindValue(":SRCID", (*it).id);
+    query.exec();
     if (query.isActive() && query.size() > 0)
     {
         query.next();