From c07c5d9357d0e1796b24abac74d9628b41098242 Mon Sep 17 00:00:00 2001 From: Robert Nitsch <r.s.nitsch@gmail.com> Date: Mon, 21 May 2012 19:43:03 +0200 Subject: [PATCH] Fixes messages.txt's modification timestamp not being updated. This bug occurs on systems where writing a zero-length string to an empty file does not update the file's modification timestamp. This leads to the messages.txt being downloaded almost endlessly, causing long delays for logged-in users. Visitors are not affected, because the messages.txt is only updated for logged-in users. --- inc/infoutils.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/inc/infoutils.php b/inc/infoutils.php index 2b8486906..ff752cd0f 100644 --- a/inc/infoutils.php +++ b/inc/infoutils.php @@ -25,11 +25,14 @@ function checkUpdateMessages(){ // check if new messages needs to be fetched if($lm < time()-(60*60*24) || $lm < @filemtime(DOKU_INC.DOKU_SCRIPT)){ + dbglog("checkUpdatesMessages(): downloading messages.txt"); $http = new DokuHTTPClient(); $http->timeout = 8; $data = $http->get(DOKU_MESSAGEURL.$updateVersion); io_saveFile($cf,$data); + @touch($cf); }else{ + dbglog("checkUpdatesMessages(): messages.txt up to date"); $data = io_readFile($cf); } -- GitLab