diff options
author | Andrew Dolgov <[email protected]> | 2012-12-12 09:46:02 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2012-12-12 09:46:02 +0400 |
commit | 2a91b6ff78145a3ed955f7617b00e404ad6357b6 (patch) | |
tree | 9397979ab715c70a7fd622e7c7c795b9b8a75cf1 /include | |
parent | 88e8fb3a7132d1321ab65b66a19a67df890c402d (diff) |
add built-in expiring of obsolete lockfiles
Diffstat (limited to 'include')
-rw-r--r-- | include/rssfuncs.php | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/include/rssfuncs.php b/include/rssfuncs.php index b5949d720..1b39efec1 100644 --- a/include/rssfuncs.php +++ b/include/rssfuncs.php @@ -141,6 +141,7 @@ } expire_cached_files($debug); + expire_lock_files($debug); // For each feed, we call the feed update function. while ($line = array_pop($feeds_to_update)) { @@ -1394,6 +1395,27 @@ return $doc->saveXML($node, LIBXML_NOEMPTYTAG); } + function expire_lock_files($debug) { + if ($debug) _debug("Removing old lock files..."); + + $num_deleted = 0; + + if (is_writable(LOCK_DIRECTORY)) { + $files = glob(LOCK_DIRECTORY . "/*.lock"); + + if ($files) { + foreach ($files as $file) { + if (!file_is_locked($file) && time() - filemtime($file) > 86400*2) { + unlink($file); + ++$num_deleted; + } + } + } + } + + if ($debug) _debug("Removed $num_deleted files."); + } + function expire_cached_files($debug) { foreach (array("magpie", "simplepie", "images", "export") as $dir) { $cache_dir = CACHE_DIR . "/$dir"; @@ -1405,7 +1427,7 @@ if (is_writable($cache_dir)) { $files = glob("$cache_dir/*"); - if ($files) + if ($files) { foreach ($files as $file) { if (time() - filemtime($file) > 86400*7) { unlink($file); @@ -1414,6 +1436,7 @@ } } } + } if ($debug) _debug("Removed $num_deleted files."); } |