diff --git a/lib/private/Config.php b/lib/private/Config.php index c881e48500..f462bebaf5 100644 --- a/lib/private/Config.php +++ b/lib/private/Config.php @@ -265,10 +265,8 @@ class Config { flock($filePointer, LOCK_UN); fclose($filePointer); - // Try invalidating the opcache just for the file we wrote... - if (!\OC_Util::deleteFromOpcodeCache($this->configFilePath)) { - // But if that doesn't work, clear the whole cache. - \OC_Util::clearOpcodeCache(); + if (function_exists('opcache_invalidate')) { + @opcache_invalidate($this->configFilePath, true); } } } diff --git a/lib/private/legacy/util.php b/lib/private/legacy/util.php index 7ab1371654..9bada5bb73 100644 --- a/lib/private/legacy/util.php +++ b/lib/private/legacy/util.php @@ -1331,56 +1331,6 @@ class OC_Util { return $theme; } - /** - * Clear a single file from the opcode cache - * This is useful for writing to the config file - * in case the opcode cache does not re-validate files - * Returns true if successful, false if unsuccessful: - * caller should fall back on clearing the entire cache - * with clearOpcodeCache() if unsuccessful - * - * @param string $path the path of the file to clear from the cache - * @return bool true if underlying function returns true, otherwise false - */ - public static function deleteFromOpcodeCache($path) { - $ret = false; - if ($path) { - // APC >= 3.1.1 - if (function_exists('apc_delete_file')) { - $ret = @apc_delete_file($path); - } - // Zend OpCache >= 7.0.0, PHP >= 5.5.0 - if (function_exists('opcache_invalidate')) { - $ret = @opcache_invalidate($path); - } - } - return $ret; - } - - /** - * Clear the opcode cache if one exists - * This is necessary for writing to the config file - * in case the opcode cache does not re-validate files - * - * @return void - * @suppress PhanDeprecatedFunction - * @suppress PhanUndeclaredConstant - */ - public static function clearOpcodeCache() { - // APC - if (function_exists('apc_clear_cache')) { - apc_clear_cache(); - } - // Zend Opcache - if (function_exists('accelerator_reset')) { - accelerator_reset(); - } - // Opcache (PHP >= 5.5) - if (function_exists('opcache_reset')) { - @opcache_reset(); - } - } - /** * Normalize a unicode string *