Prechádzať zdrojové kódy

Fixed regression introduced in [r4415]: data model remains unchanged though the customizations have been successfully compiled (and taken into account in the DB). The fix consists in completing the implementation: the verb apc_cache_info was missing, preventing the cache from being reset by the setup. I took the opportunity to add other verbs of apc so as to make sure that the emulation be consistent with the emulation provided by older versions of apcu.

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@4440 a333f486-631f-4898-b8df-5754b55c2be0
romainq 8 rokov pred
rodič
commit
c5f46aed86
1 zmenil súbory, kde vykonal 40 pridanie a 8 odobranie
  1. 40 8
      core/apc-compat.php

+ 40 - 8
core/apc-compat.php

@@ -16,22 +16,54 @@
 //   You should have received a copy of the GNU Affero General Public License
 //   along with iTop. If not, see <http://www.gnu.org/licenses/>
 
+// Emulate the API of APC, over APCU
+// Note: for PHP < 7, this compatibility used to be provided by APCU itself (if compiled with some options)
+//       for PHP 7+, it can be provided by the mean of apcu_bc, which is not so simple to install
+//       The current emulation aims at skipping this complexity
 if (!function_exists('apc_store') && function_exists('apcu_store'))
 {
-	// Emulate the API of APC, over APCU
-	// Note: for PHP < 7, this compatibility used to be provided by APCU itself (if compiled with some options)
-	//       for PHP 7+, it can be provided by the mean of apcu_bc, which is not so simple to install
-	//       The current emulation aims at skipping this complexity
-	function apc_store($key, $var, $ttl = 0)
+	function apc_add($key, $var, $ttl = 0)
 	{
-		return apcu_store($key, $var, $ttl);
+		return apcu_add($key, $var, $ttl);
 	}
-	function apc_fetch($key)
+	function apc_cache_info($cache_type = '', $limited = false)
 	{
-		return apcu_fetch($key);
+		return apcu_cache_info($limited);
+	}
+	function apc_cas($key, $old, $new)
+	{
+		return apcu_cas($key, $old, $new);
+	}
+	function apc_clear_cache($cache_type = '')
+	{
+		return apcu_clear_cache();
+	}
+	function apc_dec($key, $step = 1, &$success = null)
+	{
+		apcu_dec($key, $step, $success);
 	}
 	function apc_delete($key)
 	{
 		return apcu_delete($key);
 	}
+	function apc_exists($keys)
+	{
+		return apcu_exists($keys);
+	}
+	function apc_fetch($key)
+	{
+		return apcu_fetch($key);
+	}
+	function apc_inc($key, $step = 1, &$success = null)
+	{
+		apcu_inc($key, $step, $success);
+	}
+	function apc_sma_info($limited = false)
+	{
+		return apcu_sma_info($limited);
+	}
+	function apc_store($key, $var, $ttl = 0)
+	{
+		return apcu_store($key, $var, $ttl);
+	}
 }