From 9c9ae7d9c96ccbabe094ed998be4998fbe01b6e3 Mon Sep 17 00:00:00 2001 From: Fritz Michael Gschwantner Date: Thu, 21 Jun 2018 09:40:59 +0200 Subject: [PATCH] [Lock] use 'r+' for fopen (fixes issue on Solaris) --- src/Symfony/Component/Lock/Store/FlockStore.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Component/Lock/Store/FlockStore.php b/src/Symfony/Component/Lock/Store/FlockStore.php index d0317358e89a5..5c5baee29a91d 100644 --- a/src/Symfony/Component/Lock/Store/FlockStore.php +++ b/src/Symfony/Component/Lock/Store/FlockStore.php @@ -79,12 +79,12 @@ private function lock(Key $key, $blocking) // Silence error reporting set_error_handler(function ($type, $msg) use (&$error) { $error = $msg; }); - if (!$handle = fopen($fileName, 'r')) { + if (!$handle = fopen($fileName, 'r+') ?: fopen($fileName, 'r')) { if ($handle = fopen($fileName, 'x')) { chmod($fileName, 0444); - } elseif (!$handle = fopen($fileName, 'r')) { + } elseif (!$handle = fopen($fileName, 'r+') ?: fopen($fileName, 'r')) { usleep(100); // Give some time for chmod() to complete - $handle = fopen($fileName, 'r'); + $handle = fopen($fileName, 'r+') ?: fopen($fileName, 'r'); } } restore_error_handler();