Closed (fixed)
Project:
Cache Backport (D7 to D6)
Version:
6.x-1.0-rc2
Component:
Code
Priority:
Critical
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
23 Jun 2015 at 12:59 UTC
Updated:
10 Jul 2015 at 12:04 UTC
Jump to comment: Most recent
Comments
Comment #1
yakovyarmo commentedAs a solution i added the following (https://api.drupal.org/api/drupal/includes!bootstrap.inc/function/drupal...) to cache.inc:
function &drupal_static($name, $default_value = NULL, $reset = FALSE) {
static $data = array(), $default = array();
// First check if dealing with a previously defined static variable.
if (isset($data [$name]) || array_key_exists($name, $data)) {
// Non-NULL $name and both $data[$name] and $default[$name] statics exist.
if ($reset) {
// Reset pre-existing static variable to its default value.
$data [$name] = $default [$name];
}
return $data [$name];
}
// Neither $data[$name] nor $default[$name] static variables exist.
if (isset($name)) {
if ($reset) {
// Reset was called before a default is set and yet a variable must be
// returned.
return $data;
}
// First call with new non-NULL $name. Initialize a new static variable.
$default [$name] = $data [$name] = $default_value;
return $data [$name];
}
// Reset all: ($name == NULL). This needs to be done one at a time so that
// references returned by earlier invocations of drupal_static() also get
// reset.
foreach ($default as $name => $value) {
$data [$name] = $value;
}
// As the function returns a reference, the return should always be a
// variable.
return $data;
}
Comment #2
pounardNew release (6.x-1.0-rc4) will be released in a few minutes, thanks for reporting.