Version 4.1.19

This commit is contained in:
Neo committed 2025-12-19 05:38:56 -08:00
1 parent 28bd025b35
commit 2bd5025018
2674 files changed
+233518 -77766

No files matched your search

+12 -5
View File
@@ -2,9 +2,9 @@
/**
* @brief Database Storage Class
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
* @since 07 May 2013
* @version SVN_VERSION_NUMBER
*/
@@ -36,7 +36,7 @@ class _Database extends \IPS\Data\Store
/**
* @brief Always needed Store keys
*/
public $initLoad = array( 'cacheKeys', 'settings', 'storageConfigurations', 'themes', 'languages', 'groups', 'applications', 'modules', 'widgets', 'furl', 'javascript_map', 'metaTags', 'bannedIpAddresses', 'license_data', 'furl_configuration' );
public $initLoad = array( 'cacheKeys', 'settings', 'storageConfigurations', 'themes', 'languages', 'groups', 'applications', 'modules', 'widgets', 'furl', 'javascript_map', 'metaTags', 'bannedIpAddresses', 'license_data', 'furl_configuration', 'rssFeeds', 'frontNavigation', 'globalStreamIds' );
/**
* @brief Have we done the intitial load?
@@ -107,8 +107,15 @@ class _Database extends \IPS\Data\Store
}
if ( !isset( static::$cache[ $key ] ) )
{
static::$cache[ $key ] = \IPS\Db::i()->select( 'store_value', 'core_store', array( 'store_key=?', $key ) )->first();
{
try
{
static::$cache[ $key ] = \IPS\Db::i()->select( 'store_value', 'core_store', array( 'store_key=?', $key ) )->first();
}
catch ( \IPS\Db\Exception $e )
{
throw new \UnderflowException;
}
}
return static::$cache[ $key ];
+32 -17
View File
@@ -2,9 +2,9 @@
/**
* @brief File System Storage Class
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
* @since 07 May 2013
* @version SVN_VERSION_NUMBER
*/
@@ -93,14 +93,14 @@ class _FileSystem extends \IPS\Data\Store
{
if ( !isset( static::$cache[ $key ] ) )
{
/* It is remotely possible that the file was removed in between an exists check and a get call on a busy site,
so we need to make sure the file still exists in order to prevent a php warning */
clearstatcache();
if ( file_exists( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' ) )
if ( @filesize( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' ) )
{
static::$cache[ $key ] = require( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
}
else
{
throw new \UnderflowException;
}
}
return static::$cache[ $key ];
@@ -139,9 +139,9 @@ CONTENTS;
static::$cache[ $key ] = $value;
/* Clear zend opcache if enabled */
if( function_exists('opcache_reset') )
if ( function_exists( 'opcache_invalidate' ) )
{
@opcache_reset();
@opcache_invalidate( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
}
return $result;
@@ -159,8 +159,18 @@ CONTENTS;
{
return TRUE;
}
return is_file( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
else
{
try
{
$this->get( $key );
return TRUE;
}
catch ( \UnderflowException $e )
{
return FALSE;
}
}
}
/**
@@ -171,21 +181,24 @@ CONTENTS;
*/
public function delete( $key )
{
$return = false;
if ( file_exists( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' ) )
{
return @unlink( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
$return = @unlink( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
}
if( isset( static::$cache[ $key ] ) )
if( array_key_exists( $key, static::$cache ) )
{
unset( static::$cache[ $key ] );
}
/* Clear zend opcache if enabled */
if( function_exists('opcache_reset') )
if ( function_exists( 'opcache_invalidate' ) )
{
@opcache_reset();
@opcache_invalidate( $this->_path . '/' . $key . '.' . \IPS\SUITE_UNIQUE_KEY . '.php' );
}
return $return;
}
/**
@@ -211,8 +224,10 @@ CONTENTS;
}
}
/* Clear zend opcache if enabled */
if( function_exists('opcache_reset') )
/* Clear zend opcache if enabled - we call reset here since we're wiping multiple files
and since this gets called as part of a general 'rebuild everything', a reset is
probably a good idea anyway */
if ( function_exists( 'opcache_reset' ) )
{
@opcache_reset();
}