diff --git a/includes/install.inc b/includes/install.inc index 3631c36..042ea78 100644 --- a/includes/install.inc +++ b/includes/install.inc @@ -657,6 +657,17 @@ function drupal_rewrite_settings($settings = array(), $prefix = '') { else { throw new Exception(st('Failed to open %settings. Verify the file permissions.', array('%settings' => $default_settings))); } + + // Clear opcode cache. + if (function_exists('opcache_invalidate')) { + opcache_invalidate(DRUPAL_ROOT . '/' . $settings_file); + } + if (function_exists('apc_delete_file')) { + apc_delete_file(DRUPAL_ROOT . '/' . $settings_file); + } + if (function_exists('wincache_refresh_if_changed')) { + wincache_refresh_if_changed(array(DRUPAL_ROOT . '/' . $settings_file)); + } } /**