summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwebchick2012-08-18 12:42:31 +0200
committerwebchick2012-08-18 12:42:31 +0200
commit3f926260874d09109f225c26bec7fb65d97f2da0 (patch)
tree20f3d84513afd6b5dd51ee4fe2fadbdedc48bbbc
parent25cc86df681004248adda02626c8ce968235f3e7 (diff)
Issue #1733746 by penyaskito, sxnc, jsbalsera, Gábor Hojtsy: Fixed D8 installer is broken if selecting a non-English language on installation.
-rw-r--r--core/includes/install.inc3
-rw-r--r--core/lib/Drupal/Component/Gettext/PoMemoryWriter.php9
2 files changed, 8 insertions, 4 deletions
diff --git a/core/includes/install.inc b/core/includes/install.inc
index 4c9c60c..f0c329b 100644
--- a/core/includes/install.inc
+++ b/core/includes/install.inc
@@ -700,6 +700,9 @@ function st($string, array $args = array(), array $options = array()) {
// that multiple files end with the same extension, even if unlikely.
$files = install_find_translation_files($install_state['parameters']['langcode']);
if (!empty($files)) {
+ // Register locale classes with the classloader. Locale module is not
+ // yet enabled at this stage, so this is not happening automatically.
+ drupal_classloader_register('locale', drupal_get_path('module', 'locale'));
$strings = Gettext::filesToArray($install_state['parameters']['langcode'], $files);
}
}
diff --git a/core/lib/Drupal/Component/Gettext/PoMemoryWriter.php b/core/lib/Drupal/Component/Gettext/PoMemoryWriter.php
index e304451..11c5361 100644
--- a/core/lib/Drupal/Component/Gettext/PoMemoryWriter.php
+++ b/core/lib/Drupal/Component/Gettext/PoMemoryWriter.php
@@ -34,11 +34,12 @@ class PoMemoryWriter implements PoWriterInterface {
* Implements Drupal\Component\Gettext\PoWriterInterface::writeItem().
*/
public function writeItem(PoItem $item) {
- if (is_array($item->source)) {
- $item->source = implode(LOCALE_PLURAL_DELIMITER, $item->source);
- $item->translation = implode(LOCALE_PLURAL_DELIMITER, $item->translation);
+ if (is_array($item->getSource())) {
+ $item->setSource(implode(LOCALE_PLURAL_DELIMITER, $item->getSource()));
+ $item->setTranslation(implode(LOCALE_PLURAL_DELIMITER, $item->getTranslation()));
}
- $this->_items[isset($item->context) ? $item->context : ''][$item->source] = $item->translation;
+ $context = $item->getContext();
+ $this->_items[$context != NULL ? $context : ''][$item->getSource()] = $item->getTranslation();
}
/**