Index: branches/5.2.x/core/kernel/utility/cache.php =================================================================== diff -u -N -r15095 -r15096 --- branches/5.2.x/core/kernel/utility/cache.php (.../cache.php) (revision 15095) +++ branches/5.2.x/core/kernel/utility/cache.php (.../cache.php) (revision 15096) @@ -1,6 +1,6 @@ _handler->get($to_get); + if ( $to_get ) { + $multi_res = $this->_handler->get($to_get); - foreach ($to_get as $index => $prepared_name) { - $name = $names[$index]; + foreach ($to_get as $index => $prepared_name) { + $name = $names[$index]; - if ( array_key_exists($prepared_name, $multi_res) ) { - $res[$name] =& $multi_res[$prepared_name]; + if ( array_key_exists($prepared_name, $multi_res) ) { + $res[$name] =& $multi_res[$prepared_name]; + } + else { + $res[$name] = false; + } + + $this->_postProcessGetCache($prepared_name, $res[$name], $store_locally[$index], $request_number); } - else { - $res[$name] = false; - } - $this->_postProcessGetCache($prepared_name, $res[$name], $store_locally[$index], $request_number); + $request_number++; } - $request_number++; - return count($res) == 1 ? array_pop($res) : $res; } @@ -326,7 +328,7 @@ } } - if ( $store_locally && ($res !== false) ) { + if ( $store_locally /*&& ($res !== false)*/ ) { $this->_localStorage[$name] = $res; if ( $this->displayCacheStatistics ) { @@ -404,7 +406,7 @@ $serial_values = $this->_getCache($serial_names, $store_locally); if ( !is_array($serial_values) ) { - $serial_values[ current($serial_names) ] = $serial_values; + $serial_values = Array (current($serial_names) => $serial_values); } foreach ($serial_names as $serial_name) {