createSymlinks := func(baseDir, id string) {
for _, dir := range files.ComponentFolders {
- c.Assert(os.Chdir(filepath.Join(baseDir, dir)), qt.IsNil)
- c.Assert(os.Symlink("real", fmt.Sprintf("realsym%s", id)), qt.IsNil)
- c.Assert(os.Chdir(filepath.Join(baseDir, dir, "real")), qt.IsNil)
- c.Assert(os.Symlink("data.toml", fmt.Sprintf(filepath.FromSlash("datasym%s.toml"), id)), qt.IsNil)
+ // Issue #9119: private use language tags cannot exceed 8 characters.
+ if dir != "i18n" {
+ c.Assert(os.Chdir(filepath.Join(baseDir, dir)), qt.IsNil)
+ c.Assert(os.Symlink("real", fmt.Sprintf("realsym%s", id)), qt.IsNil)
+ c.Assert(os.Chdir(filepath.Join(baseDir, dir, "real")), qt.IsNil)
+ c.Assert(os.Symlink("data.toml", fmt.Sprintf(filepath.FromSlash("datasym%s.toml"), id)), qt.IsNil)
+ }
}
}
lang := paths.Filename(name)
tag := language.Make(lang)
if tag == language.Und {
+ try := artificialLangTagPrefix + lang
+ _, err = language.Parse(try)
+ if err != nil {
+ return _errors.Errorf("%q %s.", try, err)
+ }
name = artificialLangTagPrefix + name
}