commit 4e337cc4f2330cb42ce8e3339c4e4f45a34cf727
parent 18c683f1f4dd4519e720655d2552ffe571ed7fcf
Author: markseu <mark2011@mayberg.se>
Date: Thu, 20 Apr 2023 06:43:52 +0200
Updated file handling
Diffstat:
2 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/system/extensions/update-current.ini b/system/extensions/update-current.ini
@@ -1,11 +1,11 @@
# Datenstrom Yellow update settings
Extension: Core
-Version: 0.8.108
+Version: 0.8.109
Description: Core functionality of the website.
DocumentationUrl: https://github.com/annaesvensson/yellow-core
DownloadUrl: https://github.com/datenstrom/yellow-extensions/raw/main/downloads/core.zip
-Published: 2023-04-16 23:48:53
+Published: 2023-04-20 06:01:12
Developer: Mark Seuffert, David Fehrmann
Tag: feature
system/extensions/core.php: core.php, create, update
@@ -121,11 +121,11 @@ system/themes/stockholm-opensans-light.woff: stockholm-opensans-light.woff, crea
system/themes/stockholm-opensans-regular.woff: stockholm-opensans-regular.woff, create, update, careful
Extension: Update
-Version: 0.8.93
+Version: 0.8.94
Description: Keep your website up to date.
DocumentationUrl: https://github.com/annaesvensson/yellow-update
DownloadUrl: https://github.com/datenstrom/yellow-extensions/raw/main/downloads/update.zip
-Published: 2023-04-16 23:51:15
+Published: 2023-04-19 20:46:53
Developer: Anna Svensson
Tag: feature
system/extensions/update.php: update.php, create, update
diff --git a/system/extensions/update.php b/system/extensions/update.php
@@ -2,7 +2,7 @@
// Update extension, https://github.com/annaesvensson/yellow-update
class YellowUpdate {
- const VERSION = "0.8.93";
+ const VERSION = "0.8.94";
const PRIORITY = "2";
public $yellow; // access to API
public $extensions; // number of extensions
@@ -82,13 +82,17 @@ class YellowUpdate {
if ($text=="release") $output = "Datenstrom Yellow ".YellowCore::RELEASE;
if ($text=="log") {
$fileName = $this->yellow->system->get("coreExtensionDirectory").$this->yellow->system->get("coreWebsiteFile");
- $fileHandle = @fopen($fileName, "r");
+ $fileHandle = @fopen($fileName, "rb");
if ($fileHandle) {
- $dataBufferSize = 512;
- fseek($fileHandle, max(0, filesize($fileName) - $dataBufferSize));
- $dataBuffer = fread($fileHandle, $dataBufferSize);
- if (strlenb($dataBuffer)==$dataBufferSize) {
- $dataBuffer = ($pos = strposu($dataBuffer, "\n")) ? substru($dataBuffer, $pos+1) : $dataBuffer;
+ clearstatcache(true, $fileName);
+ if (flock($fileHandle, LOCK_SH)) {
+ $dataBufferSize = 1024;
+ fseek($fileHandle, max(0, filesize($fileName) - $dataBufferSize));
+ $dataBuffer = fread($fileHandle, $dataBufferSize);
+ if (strlenb($dataBuffer)==$dataBufferSize) {
+ $dataBuffer = ($pos = strposu($dataBuffer, "\n")) ? substru($dataBuffer, $pos+1) : $dataBuffer;
+ }
+ flock($fileHandle, LOCK_UN);
}
fclose($fileHandle);
}