Skip to content

Commit

Permalink
[Translation] removed an uneeded class property
Browse files Browse the repository at this point in the history
  • Loading branch information
fabpot committed Apr 20, 2013
1 parent ad4624c commit 4c4a0c4
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 9 deletions.
12 changes: 5 additions & 7 deletions src/Symfony/Component/Translation/Loader/XliffFileLoader.php
Expand Up @@ -34,7 +34,7 @@ public function load($resource, $locale, $domain = 'messages')
throw new \InvalidArgumentException(sprintf('This is not a local file "%s".', $resource));
}

$xml = $this->parseFile($resource);
list($xml, $encoding) = $this->parseFile($resource);
$xml->registerXPathNamespace('xliff', 'urn:oasis:names:tc:xliff:document:1.2');

$catalogue = new MessageCatalogue($locale);
Expand All @@ -50,11 +50,11 @@ public function load($resource, $locale, $domain = 'messages')

// If the xlf file has another encoding specified, try to convert it because
// simple_xml will always return utf-8 encoded values
if ('UTF-8' !== $this->encoding && !empty($this->encoding)) {
if ('UTF-8' !== $encoding && !empty($encoding)) {
if (function_exists('mb_convert_encoding')) {
$target = mb_convert_encoding($target, $this->encoding, 'UTF-8');
$target = mb_convert_encoding($target, $encoding, 'UTF-8');
} elseif (function_exists('iconv')) {
$target = iconv('UTF-8', $this->encoding, $target);
$target = iconv('UTF-8', $encoding, $target);
} else {
throw new \RuntimeException('No suitable convert encoding function (use UTF-8 as your encoding or install the iconv or mbstring extension).');
}
Expand Down Expand Up @@ -90,8 +90,6 @@ private function parseFile($file)
throw new \RuntimeException(implode("\n", $this->getXmlErrors($internalErrors)));
}

$this->encoding = strtoupper($dom->encoding);

libxml_disable_entity_loader($disableEntities);

foreach ($dom->childNodes as $child) {
Expand Down Expand Up @@ -125,7 +123,7 @@ private function parseFile($file)

libxml_use_internal_errors($internalErrors);

return simplexml_import_dom($dom);
return array(simplexml_import_dom($dom), strtoupper($dom->encoding));
}

/**
Expand Down
Expand Up @@ -52,6 +52,10 @@ public function testIncompleteResource()

public function testEncoding()
{
if (!function_exists('iconv') && !function_exists('mb_convert_encoding')) {
$this->markTestSkipped('The iconv and mbstring extensions are not available.');
}

$loader = $this->createLoader();
$catalogue = $loader->load(__DIR__.'/../fixtures/encoding.xlf', 'en', 'domain1');

Expand Down
4 changes: 2 additions & 2 deletions src/Symfony/Component/Translation/Tests/fixtures/encoding.xlf
Expand Up @@ -4,11 +4,11 @@
<body>
<trans-unit id="1" resname="foo">
<source>foo</source>
<target>bär</target>
<target>bär</target>
</trans-unit>
<trans-unit id="2" resname="bar">
<source>bar</source>
<target>föö</target>
<target>föö</target>
</trans-unit>
</body>
</file>
Expand Down

0 comments on commit 4c4a0c4

Please sign in to comment.