Merge branch '2.8'

* 2.8:
  [travis] Add PHP 7 to allowed failures until segfaults are fixed
  [Intl] Fix test
  [Translator][fallback catalogues] fixed circular reference.
  bumped Symfony version to 2.3.33
  updated VERSION for 2.3.32
  update CONTRIBUTORS for 2.3.32
  updated CHANGELOG for 2.3.32
  Require symfony/intl ~2.4 when Locale::setDefault() is used
  [Form][2.7][ Choice type] fixed groups with empty array.
  [FrameworkBundle] Fix templating.helper.code.file_link_format when defined by ini setting
  [Config] Prototypes info
  [console] Use the description when no help is available

Conflicts:
	.travis.yml
	CHANGELOG-2.3.md
	src/Symfony/Component/Form/composer.json
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/Intl/Tests/DateFormatter/AbstractIntlDateFormatterTest.php
	src/Symfony/Component/Translation/composer.json
	src/Symfony/Component/Validator/composer.json
This commit is contained in:
Nicolas Grekas 2015-09-03 13:51:32 +02:00
commit 6a41f11fac
20 changed files with 112 additions and 45 deletions

View File

@ -16,7 +16,10 @@ matrix:
- php: 5.6
env: deps=2.8
- php: 7.0
- php: 5.6
env: deps=low
allow_failures:
- php: 7
fast_finish: true
services: mongodb

View File

@ -14,8 +14,8 @@ Symfony is the result of the work of many people who made the code better
- Kris Wallsmith (kriswallsmith)
- Christophe Coevoet (stof)
- Jakub Zalas (jakubzalas)
- Pascal Borreli (pborreli)
- Christian Flothmann (xabbuh)
- Pascal Borreli (pborreli)
- Hugo Hamon (hhamon)
- Joseph Bielawski (stloyd)
- Karma Dordrak (drak)
@ -26,15 +26,16 @@ Symfony is the result of the work of many people who made the code better
- Jean-François Simon (jfsimon)
- Benjamin Eberlei (beberlei)
- Igor Wiedler (igorw)
- Martin Hasoň (hason)
- Abdellatif Ait boudad (aitboudad)
- Martin Hasoň (hason)
- Eriksen Costa (eriksencosta)
- Grégoire Pineau (lyrixx)
- Wouter De Jong (wouterj)
- Jonathan Wage (jwage)
- Javier Eguiluz (javier.eguiluz)
- Kévin Dunglas (dunglas)
- Alexandre Salomé (alexandresalome)
- William Durand (couac)
- Kévin Dunglas (dunglas)
- ornicar
- stealth35 (stealth35)
- Alexander Mols (asm89)
@ -84,43 +85,42 @@ Symfony is the result of the work of many people who made the code better
- excelwebzone
- Jacob Dreesen (jdreesen)
- Matthias Pigulla (mpdude)
- Javier Eguiluz (javier.eguiluz)
- Fabien Pennequin (fabienpennequin)
- Peter Rehm (rpet)
- Peter Kokot (maastermedia)
- Gordon Franke (gimler)
- Robert Schönthal (digitalkaoz)
- Jérémy DERUSSÉ (jderusse)
- Dariusz Ruminski
- Michal Piotrowski (eventhorizon)
- Stefano Sala (stefano.sala)
- David Buchmann (dbu)
- Juti Noppornpitak (shiroyuki)
- Sebastian Hörl (blogsh)
- Daniel Gomes (danielcsgomes)
- Hidenori Goto (hidenorigoto)
- David Buchmann (dbu)
- Alexander Schwenn (xelaris)
- Guilherme Blanco (guilhermeblanco)
- Jérémy DERUSSÉ (jderusse)
- Pablo Godel (pgodel)
- Eric GELOEN (gelo)
- Vladimir Reznichenko (kalessil)
- Jérémie Augustin (jaugustin)
- Alexander Schwenn (xelaris)
- Issei Murasawa (issei_m)
- Rafael Dohms (rdohms)
- Arnaud Kleinpeter (nanocom)
- Iltar van der Berg (kjarli)
- Joshua Thijssen
- Vladimir Reznichenko (kalessil)
- Tigran Azatyan (tigranazatyan)
- Issei Murasawa (issei_m)
- Sebastiaan Stok (sstok)
- Richard Shank (iampersistent)
- Clemens Tolboom
- Helmer Aaviksoo
- Sebastiaan Stok (sstok)
- Hiromi Hishida (77web)
- Matthieu Ouellette-Vachon (maoueh)
- Michał Pipa (michal.pipa)
- Amal Raghav (kertz)
- Jonathan Ingram (jonathaningram)
- Artur Kotyrba
- Iltar van der Berg
- Rouven Weßling (realityking)
- Andréia Bohner (andreia)
- Dmitrii Chekaliuk (lazyhammer)
@ -146,6 +146,7 @@ Symfony is the result of the work of many people who made the code better
- fivestar
- Dominique Bongiraud
- Leszek Prabucki (l3l0)
- Alexander M. Turek (derrabus)
- François Zaninotto (fzaninotto)
- Dustin Whittle (dustinwhittle)
- jeff
@ -164,7 +165,6 @@ Symfony is the result of the work of many people who made the code better
- Francois Zaninotto
- Alexander Kotynia (olden)
- Daniel Tschinder
- Alexander M. Turek (derrabus)
- Elnur Abdurrakhimov (elnur)
- John Kary (johnkary)
- Manuel Reinhard (sprain)
@ -197,6 +197,7 @@ Symfony is the result of the work of many people who made the code better
- Robert Kiss (kepten)
- Ruben Gonzalez (rubenrua)
- Kim Hemsø Rasmussen (kimhemsoe)
- Diego Saint Esteben (dosten)
- Florian Lonqueu-Brochard (florianlb)
- Tom Van Looy (tvlooy)
- Wouter Van Hecke
@ -212,6 +213,7 @@ Symfony is the result of the work of many people who made the code better
- Andrew Moore (finewolf)
- Bertrand Zuchuat (garfield-fr)
- Gabor Toth (tgabi333)
- Grégoire Paris (greg0ire)
- Alex Pott
- realmfoo
- Thomas Tourlourat (armetiz)
@ -232,8 +234,11 @@ Symfony is the result of the work of many people who made the code better
- Thomas Schulz (king2500)
- Marco Pivetta (ocramius)
- Ricard Clau (ricardclau)
- Lorenz Schori
- Giorgio Premi
- Erin Millard
- Matthew Lewinski (lewinski)
- Marcos Sánchez
- alquerci
- Francesco Levorato
- Vitaliy Zakharov (zakharovvi)
@ -260,13 +265,13 @@ Symfony is the result of the work of many people who made the code better
- Kirill chEbba Chebunin (chebba)
- Greg Thornton (xdissent)
- Baptiste Clavié (talus)
- Grégoire Paris (greg0ire)
- Costin Bereveanu (schniper)
- Loïc Chardonnet (gnusat)
- Marek Kalnik (marekkalnik)
- Vyacheslav Salakhutdinov (megazoll)
- Hassan Amouhzi
- Tamas Szijarto
- Michaël Perrin (michael.perrin)
- Pavel Volokitin (pvolok)
- Endre Fejes
- Tobias Naumann (tna)
@ -297,8 +302,8 @@ Symfony is the result of the work of many people who made the code better
- Brian King
- Michel Salib (michelsalib)
- geoffrey
- Lorenz Schori
- Jeanmonod David (jeanmonod)
- Thomas Lallement (raziel057)
- Jan Schumann
- Niklas Fiekas
- lancergr
@ -370,6 +375,7 @@ Symfony is the result of the work of many people who made the code better
- Florian Rey (nervo)
- Rodrigo Borrego Bernabé (rodrigobb)
- Denis Gorbachev (starfall)
- Titouan Galopin (tgalopin)
- Steven Surowiec
- Kevin Saliou (kbsali)
- Daniel Tschinder
@ -393,7 +399,6 @@ Symfony is the result of the work of many people who made the code better
- Mantas Var (mvar)
- Sebastian Krebs
- Christopher Davis (chrisguitarguy)
- Thomas Lallement (raziel057)
- alcaeus
- vitaliytv
- Markus Bachmann (baachi)
@ -449,6 +454,7 @@ Symfony is the result of the work of many people who made the code better
- Simon Schick (simonsimcity)
- redstar504
- Hossein Bukhamsin
- origaminal
- Paweł Wacławczyk (pwc)
- Oleg Zinchenko (cystbear)
- Johannes Klauss (cloppy)
@ -538,6 +544,7 @@ Symfony is the result of the work of many people who made the code better
- Tony Malzhacker
- Cyril Quintin (cyqui)
- Gerard van Helden (drm)
- Johnny Peck (johnnypeck)
- David Romaní
- Patrick Allaert
- Gustavo Falco (gfalco)
@ -545,6 +552,7 @@ Symfony is the result of the work of many people who made the code better
- Aleksey Podskrebyshev
- David Marín Carreño (davefx)
- Jörn Lang (j.lang)
- Leo Feyer
- mwsaz
- Benoît Bourgeois
- corphi
@ -562,7 +570,6 @@ Symfony is the result of the work of many people who made the code better
- Christian Morgan
- Alexander Miehe (engerim)
- Morgan Auchede (mauchede)
- Titouan Galopin (tgalopin)
- Don Pinkster
- Maksim Muruev
- Emil Einarsson
@ -595,6 +602,7 @@ Symfony is the result of the work of many people who made the code better
- Reece Fowell (reecefowell)
- stefan.r
- Matthieu Napoli (mnapoli)
- Alexandru Furculita (afurculita)
- Ben Ramsey (ramsey)
- Christian Jul Jensen
- The Whole Life to Learn
@ -610,7 +618,6 @@ Symfony is the result of the work of many people who made the code better
- Sander Marechal
- Radosław Benkel
- Gennady Telegin (gtelegin)
- Marcos Sánchez
- ttomor
- Mei Gwilym (meigwilym)
- Michael H. Arieli (excelwebzone)
@ -647,6 +654,7 @@ Symfony is the result of the work of many people who made the code better
- Per Sandström (per)
- Goran Juric
- Laurent Ghirardotti (laurentg)
- Nicolas Macherey
- Jan Rosier (rosier)
- Lin Clark
- Jeremy David (jeremy.david)
@ -695,7 +703,6 @@ Symfony is the result of the work of many people who made the code better
- Jochen Bayer (jocl)
- Jeremy Bush
- wizhippo
- Diego Saint Esteben (dosten)
- rpg600
- Péter Buri (burci)
- Davide Borsatto (davide.borsatto)
@ -750,7 +757,6 @@ Symfony is the result of the work of many people who made the code better
- Jakub Kulhan
- Mo Di (modi)
- Jeroen van den Enden (stoefke)
- origaminal
- Quique Porta (quiqueporta)
- Tomasz Szymczyk (karion)
- ConneXNL
@ -782,8 +788,10 @@ Symfony is the result of the work of many people who made the code better
- Adrien Gallou (agallou)
- Karol Sójko (karolsojko)
- sl_toto (sl_toto)
- Walter Dal Mut (wdalmut)
- Sébastien HOUZÉ
- Jingyu Wang
- Daniel Espendiller
- steveYeah
- Samy Dindane (dinduks)
- Keri Henare (kerihenare)
@ -823,10 +831,12 @@ Symfony is the result of the work of many people who made the code better
- Tadcka
- Beth Binkovitz
- Romain Geissler
- Tomaz Ahlin
- Benjamin Cremer (bcremer)
- Marcus Stöhr (dafish)
- Emmanuel Vella (emmanuel.vella)
- Carsten Nielsen (phreaknerd)
- Mathieu Rochette
- Jay Severson
- René Kerner
- Nathaniel Catchpole
@ -861,6 +871,7 @@ Symfony is the result of the work of many people who made the code better
- Sebastian Ionescu
- Thomas Ploch
- Simon Neidhold
- Valentin VALCIU
- Kevin Dew
- James Cowgill
- Nicolas Schwartz (nicoschwartz)
@ -911,6 +922,7 @@ Symfony is the result of the work of many people who made the code better
- 2manypeople
- Wing
- Thomas Bibb
- Matt Farmer
- catch
- Alexandre Segura
- Josef Cech
@ -936,11 +948,11 @@ Symfony is the result of the work of many people who made the code better
- Manatsawin Hanmongkolchai
- Gunther Konig
- Maciej Schmidt
- nuncanada
- flack
- František Bereň
- Christoph Nissle (derstoffel)
- Ionel Scutelnicu (ionelscutelnicu)
- Johnny Peck (johnnypeck)
- Nicolas Tallefourtané (nicolab)
- Botond Dani (picur)
- Thierry Marianne (thierrymarianne)
@ -1035,6 +1047,7 @@ Symfony is the result of the work of many people who made the code better
- Florian Pfitzer (marmelatze)
- Martin Mayer (martin)
- Grzegorz Łukaszewicz (newicz)
- Veres Lajos
- grifx
- Robert Campbell
- Matt Lehner
@ -1095,11 +1108,11 @@ Symfony is the result of the work of many people who made the code better
- Kevin Herrera (kherge)
- Luis Ramón López López (lrlopez)
- Muriel (metalmumu)
- Michaël Perrin (michael.perrin)
- Michael Pohlers (mick_the_big)
- Cayetano Soriano Gallego (neoshadybeat)
- Pablo Monterde Perez (plebs)
- Jimmy Leger (redpanda)
- Pavel Batanov (scaytrase)
- Cyrille Jouineau (tuxosaurus)
- Yorkie Chadwick (yorkie76)
- Yanick Witschi
@ -1123,6 +1136,7 @@ Symfony is the result of the work of many people who made the code better
- Ismail Asci (ismailasci)
- Simon CONSTANS (kosssi)
- Kristof Van Cauwenbergh (kristofvc)
- Tristan Darricau (nicofuma)
- Ramon Henrique Ornelas (ramonornela)
- Markus S. (staabm)
- Till Klampaeckel (till)
@ -1180,6 +1194,7 @@ Symfony is the result of the work of many people who made the code better
- Skorney
- mieszko4
- Neophy7e
- bokonet
- Arrilot
- Markus Staab
- Pierre-Louis LAUNAY
@ -1190,6 +1205,7 @@ Symfony is the result of the work of many people who made the code better
- Abdulkadir N. A.
- Yevgen Kovalienia
- Sema
- Elan Ruusamäe
- Thorsten Hallwas
- Michael Squires
- Norman Soetbeer
@ -1203,7 +1219,6 @@ Symfony is the result of the work of many people who made the code better
- Penny Leach
- Richard Trebichavský
- g123456789l
- Giorgio Premi
- oscartv
- DanSync
- Peter Zwosta
@ -1261,6 +1276,7 @@ Symfony is the result of the work of many people who made the code better
- samuel laulhau (lalop)
- Laurent Bachelier (laurentb)
- Jérôme Parmentier (lctrs)
- Florent Viel (luxifer)
- Matthieu Moquet (mattketmo)
- Moritz Borgmann (mborgmann)
- Matt Drollette (mdrollette)
@ -1279,6 +1295,7 @@ Symfony is the result of the work of many people who made the code better
- Rich Sage (richsage)
- Ruud Kamphuis (ruudk)
- Bart Ruysseveldt (ruyss)
- Sascha Dens (saschadens)
- scourgen hung (scourgen)
- Sebastian Busch (sebu)
- André Filipe Gonçalves Neves (seven)

View File

@ -479,7 +479,7 @@ class FrameworkExtension extends Extension
'sublime' => 'subl://open?url=file://%%f&line=%%l',
);
$container->setParameter('templating.helper.code.file_link_format', ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format') ?: (isset($links[$ide]) ? $links[$ide] : $ide));
$container->setParameter('templating.helper.code.file_link_format', str_replace('%', '%%', ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format')) ?: (isset($links[$ide]) ? $links[$ide] : $ide));
}
$container->setParameter('fragment.renderer.hinclude.global_template', $config['hinclude_default_template']);

View File

@ -84,14 +84,18 @@ class XmlReferenceDumper
// render prototyped nodes
if ($node instanceof PrototypedArrayNode) {
array_unshift($rootComments, 'prototype');
$prototype = $node->getPrototype();
$info = 'prototype';
if (null !== $prototype->getInfo()) {
$info .= ': '.$prototype->getInfo();
}
array_unshift($rootComments, $info);
if ($key = $node->getKeyAttribute()) {
$rootAttributes[$key] = str_replace('-', ' ', $rootName).' '.$key;
}
$prototype = $node->getPrototype();
if ($prototype instanceof ArrayNode) {
$children = $prototype->getChildren();
} else {

View File

@ -69,7 +69,12 @@ class YamlReferenceDumper
if ($key = $node->getKeyAttribute()) {
$keyNodeClass = 'Symfony\Component\Config\Definition\\'.($prototype instanceof ArrayNode ? 'ArrayNode' : 'ScalarNode');
$keyNode = new $keyNodeClass($key, $node);
$keyNode->setInfo('Prototype');
$info = 'Prototype';
if (null !== $prototype->getInfo()) {
$info .= ': '.$prototype->getInfo();
}
$keyNode->setInfo($info);
// add children
foreach ($children as $childNode) {

View File

@ -64,7 +64,7 @@ class XmlReferenceDumperTest extends \PHPUnit_Framework_TestCase
child3=""
/>
<!-- prototype -->
<!-- prototype: Parameter name -->
<parameter name="parameter name">scalar value</parameter>
<!-- prototype -->

View File

@ -56,7 +56,7 @@ acme_root:
child3: ~ # Example: example setting
parameters:
# Prototype
# Prototype: Parameter name
name: ~
connections:
# Prototype

View File

@ -53,7 +53,7 @@ class ExampleConfiguration implements ConfigurationInterface
->end()
->arrayNode('parameters')
->useAttributeAsKey('name')
->prototype('scalar')->end()
->prototype('scalar')->info('Parameter name')->end()
->end()
->arrayNode('connections')
->prototype('array')

View File

@ -517,7 +517,7 @@ class Command
*/
public function getHelp()
{
return $this->help;
return $this->help ?: $this->description;
}
/**

View File

@ -131,6 +131,8 @@ class CommandTest extends \PHPUnit_Framework_TestCase
$ret = $command->setHelp('help1');
$this->assertEquals($command, $ret, '->setHelp() implements a fluent interface');
$this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help');
$command->setHelp('');
$this->assertEquals('description', $command->getHelp(), '->getHelp() fallback to the description');
}
public function testGetProcessedHelp()

View File

@ -100,7 +100,7 @@
<usage>afoobar</usage>
</usages>
<description>The foo:bar command</description>
<help/>
<help>The foo:bar command</help>
<arguments/>
<options>
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">

View File

@ -7,7 +7,7 @@
<usage>afoobar</usage>
</usages>
<description>The foo:bar command</description>
<help/>
<help>The foo:bar command</help>
<arguments/>
<options>
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">

View File

@ -172,6 +172,10 @@ class DefaultChoiceListFactory implements ChoiceListFactoryInterface
private static function addChoiceViewsGroupedBy($groupBy, $label, $choices, $keys, &$index, $attr, $isPreferred, &$preferredViews, &$otherViews)
{
foreach ($groupBy as $key => $value) {
if (null === $value) {
continue;
}
// Add the contents of groups to new ChoiceGroupView instances
if (is_array($value)) {
$preferredViewsForGroup = array();

View File

@ -536,6 +536,7 @@ class DefaultChoiceListFactoryTest extends \PHPUnit_Framework_TestCase
$list = new ArrayChoiceList(array(
'Group 1' => array('A' => $this->obj1, 'B' => $this->obj2),
'Group 2' => array('C' => $this->obj3, 'D' => $this->obj4),
'Group empty' => array(),
));
$view = $this->factory->createView(

View File

@ -29,7 +29,7 @@ class TimeZoneTransformer extends Transformer
{
$timeZone = substr($dateTime->getTimezone()->getName(), 0, 3);
if (!in_array($timeZone, array('Etc', 'UTC'))) {
if (!in_array($timeZone, array('Etc', 'UTC', 'GMT'))) {
throw new NotImplementedException('Time zone different than GMT or UTC is not supported as a formatting output.');
}

View File

@ -811,7 +811,7 @@ class NumberFormatter
* @param mixed $value The value to be converted
* @param int $type The type to convert. Can be TYPE_DOUBLE (float) or TYPE_INT32 (int)
*
* @return int|float The converted value
* @return int|float|false The converted value
*/
private function convertValueDataType($value, $type)
{
@ -831,7 +831,7 @@ class NumberFormatter
*
* @param mixed $value The value to be converted
*
* @return int The converted value
* @return int|false The converted value
*/
private function getInt32Value($value)
{
@ -847,7 +847,9 @@ class NumberFormatter
*
* @param mixed $value The value to be converted
*
* @return int|false The converted value
* @return int|float|false The converted value
*
* @see https://bugs.php.net/bug.php?id=59597 Bug #59597
*/
private function getInt64Value($value)
{

View File

@ -353,10 +353,17 @@ abstract class AbstractIntlDateFormatterTest extends \PHPUnit_Framework_TestCase
);
}
public function testFormatWithDateTimeZone()
public function testFormatWithDateTimeZoneGmt()
{
if (defined('HHVM_VERSION_ID')) {
$this->markTestSkipped('This test cannot work on HHVM. See https://github.com/facebook/hhvm/issues/5875 for the issue.');
$formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT'), IntlDateFormatter::GREGORIAN, 'zzzz');
$this->assertEquals('GMT', $formatter->format(0));
}
public function testFormatWithDateTimeZoneGmtOffset()
{
if (defined('HHVM_VERSION_ID') || PHP_VERSION_ID <= 50509) {
$this->markTestSkipped('DateTimeZone GMT offsets are supported since 5.5.10. See https://github.com/facebook/hhvm/issues/5875 for HHVM.');
}
$formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT+03:00'), IntlDateFormatter::GREGORIAN, 'zzzz');

View File

@ -190,6 +190,13 @@ class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterf
public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
{
// detect circular references
$c = $catalogue;
while ($c = $c->getFallbackCatalogue()) {
if ($c->getLocale() === $this->getLocale()) {
throw new \LogicException(sprintf('Circular reference detected when adding a fallback catalogue for locale "%s".', $catalogue->getLocale()));
}
}
$c = $this;
do {
if ($c->getLocale() === $catalogue->getLocale()) {

View File

@ -127,7 +127,7 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
/**
* @expectedException \LogicException
*/
public function testAddFallbackCatalogueWithCircularReference()
public function testAddFallbackCatalogueWithParentCircularReference()
{
$main = new MessageCatalogue('en_US');
$fallback = new MessageCatalogue('fr_FR');
@ -136,6 +136,20 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
$main->addFallbackCatalogue($fallback);
}
/**
* @expectedException \LogicException
*/
public function testAddFallbackCatalogueWithFallbackCircularReference()
{
$fr = new MessageCatalogue('fr');
$en = new MessageCatalogue('en');
$es = new MessageCatalogue('es');
$fr->addFallbackCatalogue($en);
$es->addFallbackCatalogue($en);
$en->addFallbackCatalogue($fr);
}
/**
* @expectedException \LogicException
*/
@ -178,10 +192,10 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
$this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array');
$catalogue->deleteMetadata('key2', 'messages');
$this->assertEquals(null, $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
$this->assertNull($catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
$catalogue->deleteMetadata('key2', 'domain');
$this->assertEquals(null, $catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
$this->assertNull($catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
}
public function testMetadataMerge()

View File

@ -425,8 +425,9 @@ EOF
$this->doLoadCatalogue($fallback);
}
$current->addFallbackCatalogue($this->catalogues[$fallback]);
$current = $this->catalogues[$fallback];
$fallbackCatalogue = new MessageCatalogue($fallback, $this->catalogues[$fallback]->all());
$current->addFallbackCatalogue($fallbackCatalogue);
$current = $fallbackCatalogue;
}
}