Ticket #1968: eitcache_delete_db_entries.2.diff

File eitcache_delete_db_entries.2.diff, 1.0 KB (added by Janne <janne-mythtv@…>, 16 years ago)
  • libs/libmythtv/eitcache.cpp

    old new static void replace_in_db(int chanid, ui 
    156156    return;
    157157}
    158158
     159static void delete_in_db(uint endtime)
     160{
     161
     162    MSqlQuery query(MSqlQuery::InitCon());
     163
     164    QString qstr =
     165        "DELETE FROM eit_cache "
     166        "WHERE endtime < :ENDTIME";
     167
     168    query.prepare(qstr);
     169    query.bindValue(":ENDTIME", endtime);
     170
     171    if (!query.exec())
     172        MythContext::DBError("Error deleting old eitcache entries.", query);
     173
     174    return;
     175}
     176
    159177
    160178event_map_t * EITCache::LoadChannel(uint networkid, uint tsid, uint serviceid)
    161179{
    uint EITCache::PruneOldEntries(uint time 
    340358    // Write all modified entries to DB and start with a clean cache
    341359    WriteToDB();
    342360
    343     // TODO: prune old entries in the DB
     361    // Prune old entries in the DB
     362    delete_in_db(timestamp);
    344363
    345364    return 0;
    346365}