Ticket #916: eithelper.patch

File eithelper.patch, 1.6 KB (added by anonymous, 20 years ago)
  • eithelper.cpp

     
    253253
    254254static bool has_program(MSqlQuery &query, int chanid, const Event &event)
    255255{
    256     query.prepare("SELECT subtitle FROM program "
     256    query.prepare("SELECT subtitle, description FROM program "
    257257                  "WHERE chanid    = :CHANID    AND "
    258258                  "      starttime = :STARTTIME AND "
    259259                  "      endtime   = :ENDTIME   AND "
     
    269269        return true; // return true on error
    270270    }
    271271
    272     QString eSubtitle = event.Event_Subtitle.lower();
    273     if (eSubtitle.isEmpty())
    274         return query.size(); // assume subtitle would be the same
    275     else if (!query.size())
     272    if (!query.size())
    276273        return false; // if there is nothing in db, then we don't have program
    277274
    278275    if (!query.next())
    279276        return true; // return true on error
    280277
     278    QString dbDescription = query.value(1).toString();
     279    if (event.Description.length() > dbDescription.length())
     280    {
     281        VERBOSE(VB_EIT,
     282                QString("EITHelper: Update DB description oldsize=%1 newsize=%2")
     283                .arg(dbDescription.length())
     284                .arg(event.Description.length()));
     285        return false; // description needs to be updated
     286    }
     287
     288    QString eSubtitle = event.Event_Subtitle.lower();
     289    if (eSubtitle.isEmpty())
     290        return query.size(); // assume subtitle would be the same
     291
    281292    QString dbSubtitle = query.value(0).toString().lower();
    282293
    283294    return dbSubtitle == eSubtitle; // return true on match...