mirror of
https://github.com/standardebooks/web.git
synced 2025-07-09 16:20:27 -04:00
Use temp filename when creating 'all' OPDS feed
This commit is contained in:
parent
98d98d5c24
commit
6b2a9ed655
1 changed files with 9 additions and 5 deletions
|
@ -117,15 +117,17 @@ print("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
|
||||||
$feed = ob_get_contents();
|
$feed = ob_get_contents();
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
|
|
||||||
file_put_contents('/tmp/all.xml', $feed);
|
$tempFilename = tempnam('/tmp/', 'se-opds-');
|
||||||
exec('se clean /tmp/all.xml');
|
|
||||||
|
file_put_contents($tempFilename, $feed);
|
||||||
|
exec('se clean ' . escapeshellarg($tempFilename));
|
||||||
|
|
||||||
// If the feed has changed compared to the version currently on disk, copy our new version over
|
// If the feed has changed compared to the version currently on disk, copy our new version over
|
||||||
// and update the updated timestamp in the master opds index.
|
// and update the updated timestamp in the master opds index.
|
||||||
try{
|
try{
|
||||||
if(filesize($webRoot . '/www/opds/all.xml') !== filesize('/tmp/all.xml')){
|
if(filesize($webRoot . '/www/opds/all.xml') !== filesize($tempFilename)){
|
||||||
$oldFeed = file_get_contents($webRoot . '/www/opds/all.xml');
|
$oldFeed = file_get_contents($webRoot . '/www/opds/all.xml');
|
||||||
$newFeed = file_get_contents('/tmp/all.xml');
|
$newFeed = file_get_contents($tempFilename);
|
||||||
if($oldFeed != $newFeed){
|
if($oldFeed != $newFeed){
|
||||||
file_put_contents($webRoot . '/www/opds/all.xml', $newFeed);
|
file_put_contents($webRoot . '/www/opds/all.xml', $newFeed);
|
||||||
|
|
||||||
|
@ -142,7 +144,9 @@ try{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch(Exception $ex){
|
catch(Exception $ex){
|
||||||
rename('/tmp/all.xml', $webRoot . '/www/opds/all.xml');
|
rename($tempFilename, $webRoot . '/www/opds/all.xml');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unlink($tempFilename);
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue