From 354c918a90b337bf915522fb64542546a046c048 Mon Sep 17 00:00:00 2001 From: aina-esokia Date: Mon, 3 Sep 2018 14:58:05 +0400 Subject: [PATCH 1/2] admin/setup: change file content instead of recreate config file --- .../Phrasea/Core/Configuration/Configuration.php | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php b/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php index 65250cbf3b..5e865f32c7 100644 --- a/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php +++ b/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php @@ -234,19 +234,12 @@ class Configuration implements ConfigurationInterface private function dumpFile($file, $content, $mod = 0600) { - $tmpFile = tempnam(dirname($file), basename($file)); + @chmod($file, $mod & ~umask()); - if (false !== @file_put_contents($tmpFile, $content)) { - // rename does not work on Win32 before 5.2.6 - if (@rename($tmpFile, $file)) { - @chmod($file, $mod & ~umask()); - - return; - } + if (false === @file_put_contents($file, $content)) { + throw new RuntimeException(sprintf('Unable to write %s', $file)); } - unlink($tmpFile); - throw new RuntimeException(sprintf('Unable to write %s', $file)); } private function eraseFile($file) From 288cdbd3e2912888355da5318ecb5afdfde4620c Mon Sep 17 00:00:00 2001 From: aina-esokia Date: Mon, 3 Sep 2018 15:03:47 +0400 Subject: [PATCH 2/2] update Configuration.php --- lib/Alchemy/Phrasea/Core/Configuration/Configuration.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php b/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php index 5e865f32c7..e43c190fd1 100644 --- a/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php +++ b/lib/Alchemy/Phrasea/Core/Configuration/Configuration.php @@ -234,12 +234,11 @@ class Configuration implements ConfigurationInterface private function dumpFile($file, $content, $mod = 0600) { - @chmod($file, $mod & ~umask()); - - if (false === @file_put_contents($file, $content)) { + if(false === @file_put_contents($file, $content)){ throw new RuntimeException(sprintf('Unable to write %s', $file)); + }else{ + @chmod($file, $mod & ~umask()); } - } private function eraseFile($file)