translations |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c6e2052b6f0d281fed334f8c803b1a6486d5b3bc
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Sun Feb 20 18:58:15 2022 +0100
Commit:     Gerrit Code Review <ger...@gerrit.libreoffice.org>
CommitDate: Sun Feb 20 18:58:15 2022 +0100

    Update git submodules
    
    * Update translations from branch 'master'
      to eb786dcfdb26a3ea4162190386fe01adba7ae992
      - Fix duplicate key typo
    
        (cf. core commit f0a3678ef3b048d166179513670633e1bb3acfb8 "Fix 'Adding 
Central
        Kurdish(ckb) Spell Checker & Dictionary'"), which caused builds like
        <https://ci.libreoffice.org/job/lo_daily_tb_win/929/> to fail with
    
        > /usr/bin/sh: line 1: 51209 Segmentation fault      
PATH="/home/tdf/jenkins/daily_workspace/tb/build_master/instdir/program:/home/tdf/jenkins/daily_workspace/tb/build_master/instdir/program:$PATH"
 $W/LinkTarget/Executable/ulfex.exe -i $S/scp2/source/ooo/module_ooo.ulf -o 
$W/ScpMergeTarget/scp2/source/ooo/module_ooo.ulf -m ${MERGEINPUT} -l all
        > make[1]: *** 
[C:/cygwin/home/tdf/jenkins/daily_workspace/tb/src_master/solenv/gbuild/InstallModuleTarget.mk:113:
 
C:/cygwin/home/tdf/jenkins/daily_workspace/tb/build_master/workdir/ScpMergeTarget/scp2/source/ooo/module_ooo.ulf]
 Error 139
        > make[1]: *** Deleting file 
'C:/cygwin/home/tdf/jenkins/daily_workspace/tb/build_master/workdir/ScpMergeTarget/scp2/source/ooo/module_ooo.ulf'
    
        because of (as seen with a corresponding ASan build)
    
        > ==250602==ERROR: AddressSanitizer: heap-use-after-free on address 
0x6160000060b0 at pc 0x0000003845f4 bp 0x7ffdb0cb81f0 sp 0x7ffdb0cb81e8
        > READ of size 8 at 0x6160000060b0 thread T0
        >  #0 in std::_Hashtable<rtl::OString, std::pair<rtl::OString const, 
rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OString> >, 
std::__detail::_Select1st, std::equal_to<rtl::OString>, 
std::hash<rtl::OString>, std::__detail::_Mod_range_hashing, 
std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, 
std::__detail::_Hashtable_traits<true, false, true> >::_M_bucket_index(unsigned 
long) const at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable.h:796:55
        >  #1 in std::__detail::_Map_base<rtl::OString, std::pair<rtl::OString 
const, rtl::OString>, std::allocator<std::pair<rtl::OString const, 
rtl::OString> >, std::__detail::_Select1st, std::equal_to<rtl::OString>, 
std::hash<rtl::OString>, std::__detail::_Mod_range_hashing, 
std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, 
std::__detail::_Hashtable_traits<true, false, true>, 
true>::operator[](rtl::OString const&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable_policy.h:772:32
        >  #2 in std::__cxx1998::unordered_map<rtl::OString, rtl::OString, 
std::hash<rtl::OString>, std::equal_to<rtl::OString>, 
std::allocator<std::pair<rtl::OString const, rtl::OString> > 
>::operator[](rtl::OString const&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/unordered_map.h:980:16
        >  #3 in MergeEntrys::InsertEntry(rtl::OString const&, rtl::OString 
const&, rtl::OString const&, rtl::OString const&) at 
l10ntools/inc/export.hxx:93:9
        >  #4 in MergeDataFile::InsertEntry(std::basic_string_view<char, 
std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> 
>, std::basic_string_view<char, std::char_traits<char> >, rtl::OString const&, 
rtl::OString const&, rtl::OString const&, rtl::OString const&, rtl::OString 
const&, bool, bool) at l10ntools/source/merge.cxx:317:23
        >  #5 in MergeDataFile::MergeDataFile(rtl::OString const&, rtl::OString 
const&, bool, bool) at l10ntools/source/merge.cxx:205:13
        >  #6 in LngParser::Merge(rtl::OString const&, rtl::OString const&, 
rtl::OString const&) at l10ntools/source/lngmerge.cxx:154:19
        >  #7 in sal_main_with_args(int, char**) at 
l10ntools/source/lngex.cxx:39:17
        >  #8 in main at l10ntools/source/lngex.cxx:28:1
        >
        > 0x6160000060b0 is located 48 bytes inside of 576-byte region 
[0x616000006080,0x6160000062c0)
        > freed by thread T0 here:
        >  #0 in operator delete(void*, unsigned long) at 
~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:164:3
        >  #1 in std::default_delete<MergeEntrys>::operator()(MergeEntrys*) 
const at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/unique_ptr.h:85:2
        >  #2 in std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> 
>::~unique_ptr() at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/unique_ptr.h:365:4
        >  #3 in std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >::~pair() at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/stl_pair.h:185:12
        >  #4 in void std::destroy_at<std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > > 
>(std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >*) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/stl_construct.h:88:15
        >  #5 in void 
std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<rtl::OString
 const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
true> > >::destroy<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > 
>(std::allocator<std::__detail::_Hash_node<std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, true> >&, 
std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >*) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/alloc_traits.h:537:4
        >  #6 in 
std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<rtl::OString
 const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
true> > >::_M_deallocate_node(std::__detail::_Hash_node<std::pair<rtl::OString 
const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
true>*) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable_policy.h:1982:7
        >  #7 in std::_Hashtable<rtl::OString, std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
std::allocator<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > >, std::__detail::_Select1st, 
std::equal_to<rtl::OString>, std::hash<rtl::OString>, 
std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, 
std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, 
false, true> >::_Scoped_node::~_Scoped_node() at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable.h:310:39
        >  #8 in std::pair<std::__detail::_Node_iterator<std::pair<rtl::OString 
const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
false, true>, bool> std::_Hashtable<rtl::OString, std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
std::allocator<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > >, std::__detail::_Select1st, 
std::equal_to<rtl::OString>, std::hash<rtl::OString>, 
std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, 
std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, 
false, true> >::_M_emplace<rtl::OString&, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >(std::integral_constant<bool, true>, 
rtl::OString&, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> 
>&&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable.h:2082:7
        >  #9 in std::pair<std::__detail::_Node_iterator<std::pair<rtl::OString 
const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
false, true>, bool> std::_Hashtable<rtl::OString, std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
std::allocator<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > >, std::__detail::_Select1st, 
std::equal_to<rtl::OString>, std::hash<rtl::OString>, 
std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, 
std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, 
false, true> >::emplace<rtl::OString&, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >(rtl::OString&, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> >&&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/hashtable.h:948:11
        >  #10 in 
std::pair<std::__detail::_Node_iterator<std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, false, 
true>, bool> std::__cxx1998::unordered_map<rtl::OString, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> >, 
std::hash<rtl::OString>, std::equal_to<rtl::OString>, 
std::allocator<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > > >::emplace<rtl::OString&, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > 
>(rtl::OString&, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> 
>&&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/unordered_map.h:389:16
        >  #11 in 
std::pair<__gnu_debug::_Safe_iterator<std::__detail::_Node_iterator<std::pair<rtl::OString
 const, std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > >, 
false, true>, std::__debug::unordered_map<rtl::OString, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> >, 
std::hash<rtl::OString>, std::equal_to<rtl::OString>, 
std::allocator<std::pair<rtl::OString const, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > > > >, std::forward_iterator_tag>, bool> 
std::__debug::unordered_map<rtl::OString, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> >, std::hash<rtl::OString>, 
std::equal_to<rtl::OString>, std::allocator<std::pair<rtl::OString const, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> > > > 
>::emplace<rtl::OString&, std::unique_ptr<MergeEntrys, 
std::default_delete<MergeEntrys> > >(rtl::OString&, 
std::unique_ptr<MergeEntrys, std::default_delete<MergeEntrys> >&&) at 
~/gcc/trunk/inst/lib/gcc/x86_64-pc-linu
 x-gnu/12.0.1/../../../../include/c++/12.0.1/debug/unordered_map:334:24
        >  #12 in MergeDataFile::InsertEntry(std::basic_string_view<char, 
std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> 
>, std::basic_string_view<char, std::char_traits<char> >, rtl::OString const&, 
rtl::OString const&, rtl::OString const&, rtl::OString const&, rtl::OString 
const&, bool, bool) at l10ntools/source/merge.cxx:301:14
        >  #13 in MergeDataFile::MergeDataFile(rtl::OString const&, 
rtl::OString const&, bool, bool) at l10ntools/source/merge.cxx:205:13
        >  #14 in LngParser::Merge(rtl::OString const&, rtl::OString const&, 
rtl::OString const&) at l10ntools/source/lngmerge.cxx:154:19
        >  #15 in sal_main_with_args(int, char**) at 
l10ntools/source/lngex.cxx:39:17
        >  #16 in main at l10ntools/source/lngex.cxx:28:1
        >
        > previously allocated by thread T0 here:
        >  #0 in operator new(unsigned long) at 
~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:95:3
        >  #1 in MergeDataFile::InsertEntry(std::basic_string_view<char, 
std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> 
>, std::basic_string_view<char, std::char_traits<char> >, rtl::OString const&, 
rtl::OString const&, rtl::OString const&, rtl::OString const&, rtl::OString 
const&, bool, bool) at l10ntools/source/merge.cxx:300:24
        >  #2 in MergeDataFile::MergeDataFile(rtl::OString const&, rtl::OString 
const&, bool, bool) at l10ntools/source/merge.cxx:205:13
        >  #3 in LngParser::Merge(rtl::OString const&, rtl::OString const&, 
rtl::OString const&) at l10ntools/source/lngmerge.cxx:154:19
        >  #4 in sal_main_with_args(int, char**) at 
l10ntools/source/lngex.cxx:39:17
        >  #5 in main at l10ntools/source/lngex.cxx:28:1
    
        (which will be addressed with a modification to core 
l10ntools/source/merge.cxx,
        to reliably abort Executable_ulfex upon such bad input)
    
        Change-Id: I05f52a3650b57548e2035f6521d582a607d68c0d
        Reviewed-on: https://gerrit.libreoffice.org/c/translations/+/130217
        Tested-by: Stephan Bergmann <sberg...@redhat.com>
        Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/translations b/translations
index d65e9655a561..eb786dcfdb26 160000
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit d65e9655a561110d8e2cf702729ae75aa10c55ac
+Subproject commit eb786dcfdb26a3ea4162190386fe01adba7ae992

Reply via email to