Index: branches/5.2.x/core/kernel/db/db_tag_processor.php =================================================================== diff -u -N -r16290 -r16314 --- branches/5.2.x/core/kernel/db/db_tag_processor.php (.../db_tag_processor.php) (revision 16290) +++ branches/5.2.x/core/kernel/db/db_tag_processor.php (.../db_tag_processor.php) (revision 16314) @@ -1,6 +1,6 @@ Application->GetVar('NamesToSpecialMapping', Array ()); - - if ( getArrayValue($names_mapping, $this->Prefix, $list_name) === false ) { + if ( getArrayValue($this->nameToSpecialMapping, $list_name) === false ) { $list =& $this->GetList($params); } } @@ -353,22 +358,15 @@ $requery = isset($params['requery']) && $params['requery']; $main_list = array_key_exists('main_list', $params) && $params['main_list']; - $names_mapping = $this->Application->GetVar('NamesToSpecialMapping', Array ()); - - if ( !array_key_exists($this->Prefix, $names_mapping) ) { - // create prefix-based array to special mapping storage - $names_mapping[$this->Prefix] = Array (); - } - if ( $list_name && !$requery ) { // list with "list_name" parameter - if ( !array_key_exists($list_name, $names_mapping[$this->Prefix]) ) { + if ( !array_key_exists($list_name, $this->nameToSpecialMapping) ) { // special missing -> generate one $special = $main_list ? $this->Special : $this->BuildListSpecial($params); } else { // get special, formed during list initialization - $special = $names_mapping[$this->Prefix][$list_name]; + $special = $this->nameToSpecialMapping[$list_name]; } } else { @@ -401,8 +399,7 @@ $this->Init($this->Prefix, $special); if ( $list_name ) { - $names_mapping[$this->Prefix][$list_name] = $special; - $this->Application->SetVar('NamesToSpecialMapping', $names_mapping); + $this->nameToSpecialMapping[$list_name] = $special; } return $list;