diff --git a/src/Symfony/Component/Translation/Loader/XliffFileLoader.php b/src/Symfony/Component/Translation/Loader/XliffFileLoader.php
index f6baa2d26f..e8bc40d47a 100644
--- a/src/Symfony/Component/Translation/Loader/XliffFileLoader.php
+++ b/src/Symfony/Component/Translation/Loader/XliffFileLoader.php
@@ -39,7 +39,7 @@ class XliffFileLoader implements LoaderInterface
$catalogue = new MessageCatalogue($locale);
foreach ($xml->xpath('//xliff:trans-unit') as $translation) {
- if (2 !== count($translation)) {
+ if (!isset($translation->source) || !isset($translation->target)) {
continue;
}
$catalogue->set((string) $translation->source, (string) $translation->target, $domain);
diff --git a/src/Symfony/Component/Translation/Tests/Loader/XliffFileLoaderTest.php b/src/Symfony/Component/Translation/Tests/Loader/XliffFileLoaderTest.php
index 44b35816e9..748c13483f 100644
--- a/src/Symfony/Component/Translation/Tests/Loader/XliffFileLoaderTest.php
+++ b/src/Symfony/Component/Translation/Tests/Loader/XliffFileLoaderTest.php
@@ -38,7 +38,7 @@ class XliffFileLoaderTest extends \PHPUnit_Framework_TestCase
$loader = new XliffFileLoader();
$catalogue = $loader->load(__DIR__.'/../fixtures/resources.xlf', 'en', 'domain1');
- $this->assertEquals(array('foo' => 'bar', 'key' => ''), $catalogue->all('domain1'));
+ $this->assertEquals(array('foo' => 'bar', 'key' => '', 'test' => 'with'), $catalogue->all('domain1'));
$this->assertFalse($catalogue->has('extra', 'domain1'));
}
diff --git a/src/Symfony/Component/Translation/Tests/fixtures/resources.xlf b/src/Symfony/Component/Translation/Tests/fixtures/resources.xlf
index 3f43d0b09f..b0e59880f8 100644
--- a/src/Symfony/Component/Translation/Tests/fixtures/resources.xlf
+++ b/src/Symfony/Component/Translation/Tests/fixtures/resources.xlf
@@ -13,6 +13,11 @@
+
+
+ with
+ note
+