Ticket #51: mythweb-nonlocalpng.patch

File mythweb-nonlocalpng.patch, 2.9 KB (added by Mark Edwards, 14 years ago)

This patch works better, the QUERY_PIXMAP_LASTMODIFIED appears to return -1 for non-local pixmaps so calling filemtime is quicker and safer and prevents all the pixmaps on slave backends being regenerated on every hit

  • mythweb/includes/mythbackend.php

    old new  
    226226        $hostname = chop(`hostname`);
    227227        $host     = $GLOBALS['Master_Host'];
    228228        $port     = $GLOBALS['Master_Port'];
    229         $cmd = array('QUERY_PIXMAP_LASTMODIFIED',
    230                      ' ',                 // title
    231                      ' ',                 // subtitle
    232                      ' ',                 // description
    233                      ' ',                 // category
    234                      $show->chanid,       // chanid
    235                      ' ',                 // chanstr
    236                      ' ',                 // chansign
    237                      ' ',                 // channame
    238                      $show->filename,     // filename
    239                      '0',                 // upper 32 bits
    240                      '0',                 // lower 32 bits
    241                      $show->starttime,    // starttime
    242                      $show->endtime,      // endtime
    243                      '0',                 // conflicting
    244                      '1',                 // recording
    245                      '0',                 // duplicate
    246                      $show->hostname,     // hostname
    247                      '-1',                // sourceid
    248                      '-1',                // cardid
    249                      '-1',                // inputid
    250                      ' ',                 // recpriority
    251                      ' ',                 // recstatus
    252                      ' ',                 // recordid
    253                      ' ',                 // rectype
    254                      '15',                // dupin
    255                      '6',                 // dupmethod
    256                      $show->starttime,    // recstarttime
    257                      $show->endtime,      // recendtime
    258                      ' ',                 // repeat
    259                      ' ',                 // program flags
    260                      ' ',                 // recgroup
    261                      ' ',                 // commfree
    262                      ' ',                 // chanoutputfilters
    263                      $show->seriesid,     // seriesid
    264                      $show->programid,    // programid
    265                      $show->starttime,    // dummy lastmodified
    266                      '0',                 // dummy stars
    267                      $show->starttime,    // dummy org airdate
    268                      '',                  // trailing separator
    269                     );
    270         $lastmodified = strtotime(backend_command($cmd));
     229        $lastmodified = filemtime($pngpath);
    271230    // Delete outdated images, but not until the show has finished recording
    272231        if (is_file($pngpath) && $lastmodified < $show->lastmodified && $show->lastmodified >= $show->endtime) {
    273232            unlink($pngpath);