It's not clear how to reproduce this problem, but when it happens, an
ODT file can't be saved because of an unhandled exception while
producing styles.xml.
Digging deeper, a container::NoSuchElementException is thrown in
XStyleFamily::getByName(), and when that happens the backtrace is:
#0 (anonymous namespace)::XStyleFamily::getByName (this=0x28fb8740, rName=...)
at sw/source/core/unocore/unostyle.cxx:1031
#1 0x000075ae461d5d8c in (anonymous namespace)::XStyleFamily::getByIndex (this=0x28fb8740, nIndex=0)
at sw/source/core/unocore/unostyle.cxx:1027
#2 0x000075ae541c4d77 in XMLTextListAutoStylePool::XMLTextListAutoStylePool (this=0x75ae243c1318, rExp=...)
at include/com/sun/star/uno/Reference.h:384
I.e. the XMLTextListAutoStylePool gets the NumberingStyles style family,
nStyles is 15, we try to get each numbering style by index, but already
the first fails, because 0 gets turned into a 'Keine Liste' (no list)
name, but getting that internally by name then fails.
Fix the direct problem by catching container::NoSuchElementException in
the XMLTextListAutoStylePool_Impl ctor, not expoting a list style is
better than not being able to save the document at all.
Almost certainly this is an effect of a problem earlier, but this should
improve things till reproducer steps are found for that problem.
Change-Id: Ia9fbe8db9dfe5f90f2583111c3d59b98a914798d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183445
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins