Repository.mk                                                                  
|    6 
 basic/source/runtime/methods.cxx                                               
|   63 
 chart2/source/controller/dialogs/dlg_CreationWizard.cxx                        
|    3 
 chart2/source/view/inc/PlottingPositionHelper.hxx                              
|    4 
 comphelper/source/misc/accessiblewrapper.cxx                                   
|    4 
 compilerplugins/clang/test/unusedfields.cxx                                    
|    1 
 configure.ac                                                                   
|    2 
 connectivity/source/drivers/evoab2/EApi.cxx                                    
|   54 
 connectivity/source/drivers/evoab2/EApi.h                                      
|    2 
 connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx                       
|  125 
 connectivity/source/drivers/evoab2/NResultSet.cxx                              
|  125 
 connectivity/source/drivers/firebird/PreparedStatement.cxx                     
|    6 
 connectivity/source/drivers/firebird/Util.cxx                                  
|    6 
 connectivity/source/drivers/flat/EDatabaseMetaData.cxx                         
|    2 
 connectivity/source/drivers/mysqlc/mysqlc_general.cxx                          
|    3 
 connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx               
|   32 
 connectivity/source/drivers/postgresql/pq_databasemetadata.cxx                 
|    2 
 connectivity/source/inc/java/tools.hxx                                         
|    4 
 cui/source/tabpages/tpcolor.cxx                                                
|   12 
 dbaccess/source/ui/querydesign/QueryTextView.cxx                               
|    1 
 dev/null                                                                       
|binary
 distro-configs/Jenkins/linux_clang_dbgutil_64                                  
|    1 
 download.lst                                                                   
|    8 
 editeng/source/editeng/impedit2.cxx                                            
|    6 
 editeng/source/editeng/impedit3.cxx                                            
|   10 
 editeng/source/uno/unotext.cxx                                                 
|   16 
 emfio/source/reader/wmfreader.cxx                                              
|    2 
 extensions/source/propctrlr/handlerhelper.hxx                                  
|    1 
 external/expat/expat-winapi.patch                                              
|   15 
 external/libassuan/ExternalProject_libassuan.mk                                
|    1 
 external/nss/UnpackedTarball_nss.mk                                            
|    2 
 external/nss/nss-android.patch.1                                               
|    6 
 external/nss/nss-ios.patch                                                     
|    6 
 external/nss/nss-restore-manual-pre-dependencies.patch.1                       
|    4 
 external/nss/nss-win-arm64.patch                                               
|   66 
 external/nss/nss.getopt.patch.0                                                
|   25 
 external/nss/nss_macosx.patch                                                  
|   14 
 external/zxing/0001-Use-a-patch-file-to-document-changes-from-upstream-s.patch 
|   35 
 external/zxing/0002-Update-stb_image_write-from-1.14-to-1.16.patch             
|  361 
 external/zxing/0003-Update-stb_image-from-2.25-to-2.27.patch                   
| 1162 ++
 external/zxing/0004-Apply-stb-PR-1223-to-stb_image.patch                       
|   98 
 external/zxing/UnpackedTarball_zxing.mk                                        
|    4 
 filter/source/msfilter/svdfppt.cxx                                             
|    8 
 filter/source/pdf/pdfexport.cxx                                                
|   12 
 filter/source/xsltdialog/xmlfilterjar.hxx                                      
|    1 
 forms/source/component/EventThread.hxx                                         
|    1 
 forms/source/xforms/propertysetbase.hxx                                        
|    1 
 fpicker/source/office/contentenumeration.hxx                                   
|    4 
 fpicker/source/office/fileview.cxx                                             
|   10 
 framework/inc/uielement/toolbarwrapper.hxx                                     
|    2 
 framework/source/uielement/recentfilesmenucontroller.cxx                       
|    6 
 hwpfilter/source/htags.cxx                                                     
|   26 
 hwpfilter/source/hwpreader.cxx                                                 
|   64 
 i18npool/inc/bullet.h                                                          
|   32 
 include/comphelper/accessiblewrapper.hxx                                       
|    2 
 include/comphelper/interfacecontainer3.hxx                                     
|    8 
 include/editeng/unotext.hxx                                                    
|    4 
 include/filter/msfilter/svdfppt.hxx                                            
|    3 
 include/oox/crypto/StrongEncryptionDataSpace.hxx                               
|    4 
 include/sfx2/basedlgs.hxx                                                      
|    2 
 include/sfx2/sidebar/SidebarPanelBase.hxx                                      
|    4 
 include/svtools/imageresourceaccess.hxx                                        
|    4 
 include/svx/sdr/contact/viewcontact.hxx                                        
|    5 
 include/svx/svdundo.hxx                                                        
|   19 
 include/vcl/BitmapBuffer.hxx                                                   
|    4 
 include/vcl/fieldvalues.hxx                                                    
|    3 
 include/vcl/filter/PngImageReader.hxx                                          
|    4 
 lotuswordpro/source/filter/lwpdrawobj.cxx                                      
|  171 
 lotuswordpro/source/filter/lwpsdwdrawheader.hxx                                
|   16 
 lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx                          
|    7 
 oox/source/drawingml/shape.cxx                                                 
|   30 
 oox/source/export/drawingml.cxx                                                
|    6 
 oox/source/token/properties.txt                                                
|    1 
 readlicense_oo/license/CREDITS.fodt                                            
| 4846 +++++-----
 sc/inc/kahan.hxx                                                               
|  123 
 sc/qa/uitest/calc_tests/columns.py                                             
|   20 
 sc/qa/uitest/calc_tests/rows.py                                                
|   12 
 sc/qa/uitest/calc_tests8/tdf144940.py                                          
|   72 
 sc/qa/unit/data/fods/tdf126116.fods                                            
|  170 
 sc/qa/unit/data/ods/tdf128895_emptyHiddenCols.ods                              
|binary
 sc/qa/unit/functions_array.cxx                                                 
|   16 
 sc/qa/unit/scshapetest.cxx                                                     
|    4 
 sc/qa/unit/subsequent_export-test.cxx                                          
|   18 
 sc/qa/unit/subsequent_filters-test2.cxx                                        
|   13 
 sc/source/core/data/column4.cxx                                                
|   12 
 sc/source/core/data/documen3.cxx                                               
|    6 
 sc/source/core/data/drwlayer.cxx                                               
|   16 
 sc/source/core/data/validat.cxx                                                
|    6 
 sc/source/core/tool/compiler.cxx                                               
|    3 
 sc/source/core/tool/interpr1.cxx                                               
|    6 
 sc/source/filter/html/htmlpars.cxx                                             
|   10 
 sc/source/filter/xml/XMLTableHeaderFooterContext.cxx                           
|   11 
 sc/source/filter/xml/xmlcoli.cxx                                               
|    1 
 sc/source/ui/StatisticsDialogs/RegressionDialog.cxx                            
|   11 
 sc/source/ui/app/inputhdl.cxx                                                  
|    4 
 sc/source/ui/cctrl/checklistmenu.cxx                                           
|    9 
 sc/source/ui/dbgui/PivotLayoutDialog.cxx                                       
|    3 
 sc/source/ui/drawfunc/fuins1.cxx                                               
|    4 
 sc/source/ui/inc/checklistmenu.hxx                                             
|    2 
 sc/source/ui/optdlg/tpcalc.cxx                                                 
|    8 
 sc/source/ui/unoobj/cellsuno.cxx                                               
|   16 
 sc/source/ui/unoobj/viewuno.cxx                                                
|   24 
 sc/source/ui/view/cellsh3.cxx                                                  
|    8 
 sc/source/ui/view/gridwin.cxx                                                  
|   20 
 sc/source/ui/view/output.cxx                                                   
|   41 
 sc/source/ui/xmlsource/xmlsourcedlg.cxx                                        
|    2 
 sc/uiconfig/scalc/ui/filterdropdown.ui                                         
|    1 
 sd/qa/unit/data/pptx/tdf145162.pptx                                            
|binary
 sd/qa/unit/data/pptx/tdfpictureplaceholder.pptx                                
|binary
 sd/qa/unit/export-tests-ooxml3.cxx                                             
|   36 
 sd/source/ui/animations/CustomAnimationList.cxx                                
|    2 
 sd/source/ui/annotations/annotationwindow.cxx                                  
|    9 
 sd/source/ui/func/fuinsert.cxx                                                 
|    4 
 sd/source/ui/unoidl/unomodel.cxx                                               
|    8 
 sd/uiconfig/sdraw/popupmenu/draw.xml                                           
|    1 
 sd/uiconfig/simpress/popupmenu/draw.xml                                        
|    1 
 sfx2/inc/recentdocsview.hxx                                                    
|    2 
 sfx2/source/control/recentdocsview.cxx                                         
|    8 
 sfx2/source/dialog/basedlgs.cxx                                                
|    7 
 sfx2/source/dialog/templdlg.cxx                                                
|   12 
 sfx2/source/doc/doctemplates.cxx                                               
|   27 
 shell/source/backends/kf5be/kf5backend.cxx                                     
|    2 
 shell/source/unix/exec/shellexec.cxx                                           
|    1 
 solenv/flatpak-manifest.in                                                     
|   18 
 sot/source/unoolestorage/xolesimplestorage.hxx                                 
|    2 
 starmath/inc/token.hxx                                                         
|    1 
 starmath/inc/view.hxx                                                          
|    4 
 starmath/source/edit.cxx                                                       
|    5 
 starmath/source/view.cxx                                                       
|   24 
 svtools/source/dialogs/ServerDetailsControls.cxx                               
|    2 
 svx/inc/galbrws2.hxx                                                           
|    1 
 svx/source/dialog/svxruler.cxx                                                 
|    4 
 svx/source/fmcomp/gridcell.cxx                                                 
|    5 
 svx/source/gallery2/galbrws2.cxx                                               
|   14 
 svx/source/sdr/contact/viewcontact.cxx                                         
|   19 
 svx/source/svdraw/svdedtv1.cxx                                                 
|    2 
 svx/source/svdraw/svdpage.cxx                                                  
|   12 
 svx/source/svdraw/svdtrans.cxx                                                 
|   20 
 svx/source/svdraw/svdundo.cxx                                                  
|   48 
 svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx     
|    4 
 sw/inc/editsh.hxx                                                              
|    2 
 sw/inc/ndarr.hxx                                                               
|    8 
 sw/inc/ndtxt.hxx                                                               
|    2 
 sw/inc/section.hxx                                                             
|    5 
 sw/inc/unochart.hxx                                                            
|    3 
 sw/qa/core/text/data/empty-numbering-page-split.fodt                           
|   62 
 sw/qa/core/text/data/image.png                                                 
|binary
 sw/qa/core/text/text.cxx                                                       
|   16 
 sw/qa/extras/odfimport/data/tdf146257.odt                                      
|binary
 sw/qa/extras/odfimport/odfimport.cxx                                           
|   32 
 sw/qa/extras/ooxmlexport/data/list_notcounted_indent.fodt                      
|  141 
 sw/qa/extras/ooxmlexport/data/tdf147115_defaultStyle.docx                      
|binary
 sw/qa/extras/ooxmlexport/ooxmlexport11.cxx                                     
|    5 
 sw/qa/extras/ooxmlexport/ooxmlexport14.cxx                                     
|   26 
 sw/qa/extras/tiledrendering/tiledrendering.cxx                                 
|    2 
 sw/qa/extras/uiwriter/data/tdf135061.odt                                       
|binary
 sw/qa/extras/uiwriter/data/tdf136452.fodt                                      
|   80 
 sw/qa/extras/uiwriter/uiwriter.cxx                                             
|   24 
 sw/qa/extras/uiwriter/uiwriter2.cxx                                            
|  114 
 sw/qa/extras/uiwriter/uiwriter3.cxx                                            
|   55 
 sw/qa/extras/uiwriter/uiwriter4.cxx                                            
|    2 
 sw/source/core/doc/DocumentContentOperationsManager.cxx                        
|   30 
 sw/source/core/doc/docchart.cxx                                                
|   23 
 sw/source/core/doc/docnew.cxx                                                  
|   21 
 sw/source/core/doc/number.cxx                                                  
|   27 
 sw/source/core/docnode/nodes.cxx                                               
|  182 
 sw/source/core/docnode/section.cxx                                             
|   31 
 sw/source/core/edit/edfld.cxx                                                  
|    6 
 sw/source/core/fields/reffld.cxx                                               
|    4 
 sw/source/core/frmedt/feshview.cxx                                             
|    8 
 sw/source/core/inc/doctxm.hxx                                                  
|    2 
 sw/source/core/inc/sectfrm.hxx                                                 
|    4 
 sw/source/core/layout/frmtool.cxx                                              
|   13 
 sw/source/core/layout/sectfrm.cxx                                              
|   11 
 sw/source/core/layout/trvlfrm.cxx                                              
|    2 
 sw/source/core/swg/SwXMLTextBlocks1.cxx                                        
|   16 
 sw/source/core/text/frmform.cxx                                                
|   10 
 sw/source/core/text/inftxt.cxx                                                 
|    3 
 sw/source/core/txtnode/ndtxt.cxx                                               
|   34 
 sw/source/core/txtnode/thints.cxx                                              
|    8 
 sw/source/core/unocore/unochart.cxx                                            
|    6 
 sw/source/filter/ww8/docxattributeoutput.cxx                                   
|   33 
 sw/source/filter/ww8/wrtw8sty.cxx                                              
|   28 
 sw/source/filter/ww8/wrtww8.hxx                                                
|    4 
 sw/source/ui/dbui/dbinsdlg.cxx                                                 
|    4 
 sw/source/uibase/dochdl/swdtflvr.cxx                                           
|    6 
 sw/source/uibase/docvw/AnnotationWin2.cxx                                      
|   11 
 sw/source/uibase/docvw/OverlayRanges.hxx                                       
|    1 
 sw/source/uibase/docvw/PostItMgr.cxx                                           
|    3 
 sw/source/uibase/docvw/ShadowOverlayObject.hxx                                 
|    4 
 sw/source/uibase/docvw/edtwin.cxx                                              
|   13 
 sw/source/uibase/fldui/fldmgr.cxx                                              
|   53 
 sw/source/uibase/inc/conttree.hxx                                              
|    3 
 sw/source/uibase/inc/wrtsh.hxx                                                 
|    2 
 sw/source/uibase/utlui/content.cxx                                             
|   68 
 sw/source/uibase/wrtsh/wrtsh2.cxx                                              
|    8 
 sw/uiconfig/swriter/ui/gotopagedialog.ui                                       
|    1 
 tools/source/datetime/ttime.cxx                                                
|    5 
 translations                                                                   
|    2 
 uitest/impress_tests/drawinglayer.py                                           
|    8 
 unotools/source/ucbhelper/xtempfile.cxx                                        
|    6 
 vcl/headless/svpgdi.cxx                                                        
|    7 
 vcl/inc/win/salgdi.h                                                           
|    4 
 vcl/inc/win/winlayout.hxx                                                      
|    6 
 vcl/qa/cppunit/pdfexport/data/link-wrong-page-partial.odg                      
|binary
 vcl/qa/cppunit/pdfexport/pdfexport.cxx                                         
|   28 
 vcl/qt5/Qt5Widget.cxx                                                          
|    8 
 vcl/source/app/salvtables.cxx                                                  
|   13 
 vcl/source/app/svdata.cxx                                                      
|   17 
 vcl/source/control/field.cxx                                                   
|    4 
 vcl/source/treelist/treelistbox.cxx                                            
|   18 
 vcl/uiconfig/ui/printdialog.ui                                                 
|    1 
 vcl/unx/gtk3/gtkinst.cxx                                                       
|  103 
 vcl/unx/gtk3/gtkobject.cxx                                                     
|    5 
 vcl/unx/gtk3/gtksalmenu.cxx                                                    
|    1 
 vcl/win/gdi/salfont.cxx                                                        
|   32 
 vcl/win/gdi/winlayout.cxx                                                      
|   38 
 writerfilter/source/dmapper/StyleSheetTable.cxx                                
|    6 
 xmlsecurity/source/gpg/SecurityEnvironment.hxx                                 
|    3 
 xmlsecurity/source/helper/ooxmlsecparser.hxx                                   
|    1 
 xmlsecurity/source/helper/xsecparser.hxx                                       
|    1 
 xmlsecurity/source/xmlsec/mscrypt/xmlsignature_mscryptimpl.cxx                 
|    6 
 xmlsecurity/source/xmlsec/nss/xmlsignature_nssimpl.cxx                         
|    6 
 223 files changed, 6582 insertions(+), 3596 deletions(-)

New commits:
commit 586cec3019b28c0e936ec5976616caaf03254a01
Merge: c1f57e52a8d2 422e0ad9fe10
Author:     Thorsten Behrens <[email protected]>
AuthorDate: Sat Feb 12 12:17:20 2022 +0100
Commit:     Thorsten Behrens <[email protected]>
CommitDate: Sat Feb 12 12:17:20 2022 +0100

    Merge remote-tracking branch 'origin/libreoffice-7-2' into 
feature/cib_contract6721c
    
    Update to upstream branch HEAD for 7.2.6 pre

commit 422e0ad9fe102ac44466acc6a1748f967d61246b
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Feb 11 14:54:45 2022 +0000
Commit:     Adolfo Jayme Barrientos <[email protected]>
CommitDate: Fri Feb 11 19:57:23 2022 +0100

    Resolves: tdf#147325 "Edit in SQL View" should accept tab
    
    Change-Id: I286281c317c30e5c189747f2d4844a0d5dd0828f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129830
    Tested-by: Jenkins
    Reviewed-by: Adolfo Jayme Barrientos <[email protected]>

diff --git a/dbaccess/source/ui/querydesign/QueryTextView.cxx 
b/dbaccess/source/ui/querydesign/QueryTextView.cxx
index 600f18c20300..653d9c5f2952 100644
--- a/dbaccess/source/ui/querydesign/QueryTextView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryTextView.cxx
@@ -40,6 +40,7 @@ OQueryTextView::OQueryTextView(OQueryContainerWindow* 
pParent, OQueryController&
     m_xSQL->DisableInternalUndo();
     m_xSQL->SetHelpId(HID_CTL_QRYSQLEDIT);
     m_xSQL->SetModifyHdl(LINK(this, OQueryTextView, ModifyHdl));
+    m_xSQL->SetAcceptsTab(true);
 
     m_timerUndoActionCreation.SetTimeout(1000);
     m_timerUndoActionCreation.SetInvokeHandler(LINK(this, OQueryTextView, 
OnUndoActionTimer));
commit 63fcec3105b060cffde5e94fe688c8a59418e4c0
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Jan 28 11:34:23 2022 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Fri Feb 11 17:53:34 2022 +0100

    use our own tempfile mechanism
    
    Change-Id: Ie7853ea8bd083d1056872cfad4323ff6cede235f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129071
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>
    (cherry picked from commit 45c15e1112e03b8b211ed0968ed1b16d5ed4ddfe)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129758

diff --git a/hwpfilter/source/htags.cxx b/hwpfilter/source/htags.cxx
index d0a7d772ce15..7ff67b8b2016 100644
--- a/hwpfilter/source/htags.cxx
+++ b/hwpfilter/source/htags.cxx
@@ -19,6 +19,9 @@
 
 #include "precompile.h"
 
+#include <o3tl/char16_t2wchar_t.hxx>
+#include <unotools/tempfile.hxx>
+
 #include <string.h>
 
 #include "hwplib.h"
@@ -106,27 +109,20 @@ void OlePicture::Read(HWPFile & hwpf)
           delete [] data;
           return;
     }
-    FILE *fp;
-    char tname[200];
-    wchar_t wtname[200];
-    tmpnam(tname);
-    if (nullptr == (fp = fopen(tname, "wb")))
-    {
-         delete [] data;
-         return;
-    }
-    fwrite(data, size, 1, fp);
+
+    utl::TempFile aTempFile;
+    aTempFile.EnableKillingFile();
+
+    SvFileStream aOutputStream(aTempFile.GetURL(), StreamMode::WRITE);
+    aOutputStream.WriteBytes(data, size);
     delete [] data;
-    fclose(fp);
-    MultiByteToWideChar(CP_ACP, 0, tname, -1, wtname, 200);
-    if( StgOpenStorage(wtname, nullptr,
+    aOutputStream.Close();
+    if( StgOpenStorage(o3tl::toW(aTempFile.GetFileName().getStr()), nullptr,
                     STGM_READWRITE|STGM_SHARE_EXCLUSIVE|STGM_TRANSACTED,
                     nullptr, 0, &pis) != S_OK ) {
          pis = nullptr;
-         unlink(tname);
          return;
     }
-    unlink(tname);
 #else
     hwpf.SkipBlock(size);
 #endif
commit d0df2d899c602f165bfcc9239b3ba6504069671c
Author:     Stephan Bergmann <[email protected]>
AuthorDate: Tue Feb 8 20:57:10 2022 +0100
Commit:     Stephan Bergmann <[email protected]>
CommitDate: Fri Feb 11 15:13:55 2022 +0100

    Remove COMPILER_PLUGINS_CXX from 
distro-configs/Jenkins/linux_clang_dbgutil_64
    
    It had originally been added with e754d0931ca75403647cc16100edd98e7e5ceadb
    "Remove CXXFLAGS_CXX11 from Clang plugin compilation", so "if
    COMPILER_PLUGINS_CXX is not set, simply default it to g++ instead of trying 
to
    construct an acceptable CLANGCXX value from CXX (which would be Clang).  
(The
    problem with using Clang without CXXFLAGS_CXX11 is that Clang, unlike GCC,
    typically defaults to C++03, but building compilerplugins requires C++11 at
    least.  That would cause e.g. the Gerrit/Jenkins linux_clang_dbgutil_64 
builds
    to fail---but which also needs COMPILER_PLUGINS_CXX to be explicitly set to 
'g++
    -std=c++11' as GCC on those machines is still 4.8.5 defaulting to C++03."  
But
    that should no longer be an issue with contemporary Clang, which defaults 
to >=
    C++11 for quite a while now.
    
    On the other hand, when trying to update the Clang used by
    <https://ci.libreoffice.org/job/gerrit_linux_clang_dbgutil/> from 5.0.2 to
    12.0.1, and adding
    
    > export COMPILER_PLUGINS_CXX="ccache 
$LODE_HOME"/opt_private/gcc-7.3.0/bin/g++
    
    to
    
<https://git.libreoffice.org/lode/+/refs/heads/master/bin/linux_clang_dbgutil_64.env>
    (where this setting arguably belongs, rather than in
    distro-configs/Jenkins/linux_clang_dbgutil_64, anyway), which is needed
    because that version of Clang (and thus loplugin built against it)
    cannot be built with the baseline CentOS 7 GCC 4.8.5, that setting of
    COMPILER_PLUGINS_CXX got overriden by the one in
    distro-configs/Jenkins/linux_clang_dbgutil_64, and configure failed due to
    
    > configure:21069: checking clang/Basic/SourceLocation.h usability
    > configure:21069: ccache g++ -std=c++11 -c 
-I/home/tdf/sberg/lode/opt_private/clang-llvmorg-12.0.1/include -std=c++14   
-fno-exceptions -fno-rtti -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS 
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/\
    > tdf/sberg/lode/packages/llvm-llvmorg-12.0.1.src/clang/include 
-I/home/tdf/sberg/lode/opt_private/clang-llvmorg-12.0.1/include -std=c++14   
-fno-exceptions -fno-rtti -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS 
-D__STDC_FORMAT_MACROS -D__STDC_L\
    > IMIT_MACROS 
-I/home/tdf/sberg/lode/packages/llvm-llvmorg-12.0.1.src/clang/include 
conftest.cpp >&5
    > g++: error: unrecognized command line option '-std=c++14'
    > g++: error: unrecognized command line option '-std=c++14'
    > configure:21069: $? = 1
    
    Change-Id: Ic33b116090f648ef645febb4fbb28ceb6a2a7cae
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129692
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <[email protected]>
    (cherry picked from commit a45f057d9d2bcd28e6b4342bbdf45fec38a43ac1)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129763
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/distro-configs/Jenkins/linux_clang_dbgutil_64 
b/distro-configs/Jenkins/linux_clang_dbgutil_64
index 0c83b89bcfe1..b2c041a55c5d 100644
--- a/distro-configs/Jenkins/linux_clang_dbgutil_64
+++ b/distro-configs/Jenkins/linux_clang_dbgutil_64
@@ -1,6 +1,5 @@
 --enable-dbgutil
 --enable-compiler-plugins
-COMPILER_PLUGINS_CXX=ccache g++ -std=c++11
 --enable-kf5
 --disable-compiler-plugins-analyzer-pch
 --disable-dependency-tracking
commit bfff5c7dadf9628926fbb5cd0394fcfc4464eb0b
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Jan 28 15:02:54 2022 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Fri Feb 11 14:53:38 2022 +0100

    avoid dangling tmp files in hwp import
    
    if there is embedded data use office-binary-data to transport it
    instead of a temp file
    
    https: //issues.oasis-open.org/browse/OFFICE-3933
    Change-Id: Ia1cebf0770c99210df09f03dbb507451d9cf7764
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129076
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>
    (cherry picked from commit e95d5d5666505cb05e9660f24f6c7ae039451ef8)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129759

diff --git a/hwpfilter/source/hwpreader.cxx b/hwpfilter/source/hwpreader.cxx
index 3b69da304af4..ec3cea113b69 100644
--- a/hwpfilter/source/hwpreader.cxx
+++ b/hwpfilter/source/hwpreader.cxx
@@ -515,62 +515,28 @@ void HwpReader::makeDrawMiscStyle( HWPDrawingObject *hdo )
             if( prop->flag >> 18  & 0x01 )
             {
                 padd( "draw:name", sXML_CDATA, ascii(Int2Str(hdo->index, 
"fillimage%d", buf)));
-                if( !prop->pictype )
+
+                EmPicture *emp = nullptr;
+                if (prop->pictype && strlen(prop->szPatternFile) > 3)
+                    emp = hwpfile.GetEmPictureByName(prop->szPatternFile);
+                if (!emp)
                 {
                     padd( "xlink:href", sXML_CDATA,
                         fromHcharStringToOUString(hstr2ucsstr(kstr2hstr( 
reinterpret_cast<uchar const 
*>(urltounix(prop->szPatternFile).c_str())).c_str())));
+                    padd( "xlink:type", sXML_CDATA, "simple");
+                    padd( "xlink:show", sXML_CDATA, "embed");
+                    padd( "xlink:actuate", sXML_CDATA, "onLoad");
                 }
-                else
-                {
-                    EmPicture *emp = nullptr;
-                    if ( strlen( prop->szPatternFile ) > 3)
-                        emp = hwpfile.GetEmPictureByName(prop->szPatternFile);
-                    if( emp )
-                    {
-                        char filename[128+17+9];
-                        char dirname[128];
-                        int fd;
-#ifdef _WIN32
-                        GetTempPathA(sizeof(dirname), dirname);
-                        sprintf(filename, "%s%s",dirname, emp->name);
-                        if( (fd = open( filename , _O_CREAT | _O_WRONLY | 
_O_BINARY , 0666)) >= 0 )
-#else
-                        strcpy(dirname, "/tmp/");
-                        sprintf(filename, "%s%s", dirname, emp->name);
-                        if( (fd = open( filename , O_CREAT | O_WRONLY , 0666)) 
>= 0 )
-#endif
-                        {
-                            size_t nWritten = write(fd, emp->data.get(), 
emp->size);
-                            OSL_VERIFY(nWritten == emp->size);
-                            close(fd);
-                        }
-#ifdef _WIN32
-                        int j;
-                        for(j = 0 ; j < static_cast<int>(strlen( dirname )) ; 
j++)
-                        {
-                            if( dirname[j] == '\\' ) buf[j] = '/';
-                            else buf[j] = dirname[j];
-                        }
-                        buf[j] = '\0';
-                        sprintf(filename, "file:///%s%s",buf, emp->name );
-#else
-                        sprintf(filename, "file://%s%s",dirname, emp->name );
-#endif
-                        padd( "xlink:href", sXML_CDATA, ascii(filename));
-                    }
-                    else
-                    {
-                        padd( "xlink:href", sXML_CDATA,
-                            fromHcharStringToOUString(hstr2ucsstr(kstr2hstr( 
reinterpret_cast<uchar const 
*>(urltounix(prop->szPatternFile).c_str())).c_str())));
-                    }
-
-                }
-                padd( "xlink:type", sXML_CDATA, "simple");
-                padd( "xlink:show", sXML_CDATA, "embed");
-                padd( "xlink:actuate", sXML_CDATA, "onLoad");
 
                 rstartEl( "draw:fill-image", mxList);
                 mxList->clear();
+                if (emp)
+                {
+                    rstartEl("office:binary-data", mxList);
+                    std::shared_ptr<char> 
pStr(base64_encode_string(emp->data.get(), emp->size), Free<char>());
+                    rchars(ascii(pStr.get()));
+                    rendEl("office:binary-data");
+                }
                 rendEl( "draw:fill-image");
             }
 /*  If there is a gradient, when a bitmap file is present, this is the first. 
*/
commit 8e94ec9d93fe3e1057fb1aaa2f0419114c4ea11c
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Feb 10 10:53:27 2022 +0000
Commit:     Michael Stahl <[email protected]>
CommitDate: Fri Feb 11 14:32:50 2022 +0100

    limit style export to words max style count
    
    and
    
    use std::vector
    
    LIBREOFFICE-U78X8I5G
    
    Change-Id: I436b4c13a4ce07f5e9e5d374163bc4de55cd2cde
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129766
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/sw/source/filter/ww8/wrtw8sty.cxx 
b/sw/source/filter/ww8/wrtw8sty.cxx
index d6a09917715c..966309420b01 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -151,13 +151,13 @@ MSWordStyles::MSWordStyles( MSWordExportBase& rExport, 
bool bListStyles )
         m_rExport.m_rDoc.GetFootnoteInfo().GetAnchorCharFormat( 
m_rExport.m_rDoc );
         m_rExport.m_rDoc.GetFootnoteInfo().GetCharFormat( m_rExport.m_rDoc );
     }
-    sal_uInt16 nAlloc = WW8_RESERVED_SLOTS + 
m_rExport.m_rDoc.GetCharFormats()->size() - 1 +
+    sal_uInt32 nAlloc = WW8_RESERVED_SLOTS + 
m_rExport.m_rDoc.GetCharFormats()->size() - 1 +
                                          
m_rExport.m_rDoc.GetTextFormatColls()->size() - 1 +
                                          (bListStyles ? 
m_rExport.m_rDoc.GetNumRuleTable().size() - 1 : 0);
+    nAlloc = std::min<sal_uInt32>(nAlloc, MSWORD_MAX_STYLES_LIMIT);
 
     // somewhat generous ( free for up to 15 )
-    m_pFormatA.reset( new SwFormat*[ nAlloc ] );
-    memset( m_pFormatA.get(), 0, nAlloc * sizeof( SwFormat* ) );
+    m_aFormatA.resize(nAlloc, nullptr);
     memset( m_aHeadingParagraphStyles, -1 , MAXLEVEL * sizeof( sal_uInt16));
 
     BuildStylesTable();
@@ -173,7 +173,7 @@ sal_uInt16 MSWordStyles::GetSlot( const SwFormat* pFormat ) 
const
 {
     sal_uInt16 n;
     for ( n = 0; n < m_nUsedSlots; n++ )
-        if ( m_pFormatA[n] == pFormat )
+        if ( m_aFormatA[n] == pFormat )
             return n;
     return 0xfff;                   // 0xfff: WW: zero
 }
@@ -283,19 +283,19 @@ void MSWordStyles::BuildStylesTable()
 
     const SwCharFormats& rArr = *m_rExport.m_rDoc.GetCharFormats();       // 
first CharFormat
     // the default character style ( 0 ) will not be outputted !
-    for( size_t n = 1; n < rArr.size(); n++ )
+    for( size_t n = 1; n < rArr.size() && m_nUsedSlots < 
MSWORD_MAX_STYLES_LIMIT; n++ )
     {
         SwCharFormat* pFormat = rArr[n];
-        m_pFormatA[ BuildGetSlot( *pFormat ) ] = pFormat;
+        m_aFormatA[ BuildGetSlot( *pFormat ) ] = pFormat;
     }
 
     const SwTextFormatColls& rArr2 = *m_rExport.m_rDoc.GetTextFormatColls();   
// then TextFormatColls
     // the default character style ( 0 ) will not be outputted !
-    for( size_t n = 1; n < rArr2.size(); n++ )
+    for( size_t n = 1; n < rArr2.size() && m_nUsedSlots < 
MSWORD_MAX_STYLES_LIMIT; n++ )
     {
         SwTextFormatColl* pFormat = rArr2[n];
         sal_uInt16 nId = BuildGetSlot( *pFormat ) ;
-        m_pFormatA[ nId ] = pFormat;
+        m_aFormatA[ nId ] = pFormat;
         if ( pFormat->IsAssignedToListLevelOfOutlineStyle() )
         {
             int nLvl = pFormat->GetAssignedOutlineStyleLevel() ;
@@ -308,7 +308,7 @@ void MSWordStyles::BuildStylesTable()
         return;
 
     const SwNumRuleTable& rNumRuleTable = m_rExport.m_rDoc.GetNumRuleTable();
-    for (size_t i = 0; i < rNumRuleTable.size(); ++i)
+    for (size_t i = 0; i < rNumRuleTable.size() && m_nUsedSlots < 
MSWORD_MAX_STYLES_LIMIT; ++i)
     {
         const SwNumRule* pNumRule = rNumRuleTable[i];
         if (pNumRule->IsAutoRule() || pNumRule->GetName().startsWith("WWNum"))
@@ -348,8 +348,8 @@ void MSWordStyles::BuildStyleIds()
     for (sal_uInt16 n = 1; n < m_nUsedSlots; ++n)
     {
         OUString aName;
-        if(m_pFormatA[n])
-            aName = m_pFormatA[n]->GetName();
+        if (m_aFormatA[n])
+            aName = m_aFormatA[n]->GetName();
         else if (m_aNumRules.find(n) != m_aNumRules.end())
             aName = m_aNumRules[n]->GetName();
 
@@ -613,8 +613,8 @@ void MSWordStyles::OutputStyle( SwFormat* pFormat, 
sal_uInt16 nPos )
             for ( int nSuffix = 0; ; ++nSuffix ) {
                 bool clash=false;
                 for ( sal_uInt16 n = 1; n < m_nUsedSlots; ++n )
-                    if ( m_pFormatA[n] &&
-                         m_pFormatA[n]->GetName().equalsIgnoreAsciiCase(aName) 
)
+                    if ( m_aFormatA[n] &&
+                         m_aFormatA[n]->GetName().equalsIgnoreAsciiCase(aName) 
)
                     {
                         clash = true;
                         break;
@@ -703,7 +703,7 @@ void MSWordStyles::OutputStylesTable()
         if (m_aNumRules.find(n) != m_aNumRules.end())
             OutputStyle(m_aNumRules[n], n);
         else
-            OutputStyle( m_pFormatA[n], n );
+            OutputStyle(m_aFormatA[n], n);
     }
 
     m_rExport.AttrOutput().EndStyles( m_nUsedSlots );
diff --git a/sw/source/filter/ww8/wrtww8.hxx b/sw/source/filter/ww8/wrtww8.hxx
index cad77799abe5..78b149ffd31b 100644
--- a/sw/source/filter/ww8/wrtww8.hxx
+++ b/sw/source/filter/ww8/wrtww8.hxx
@@ -1571,7 +1571,7 @@ class MSWordStyles
 {
     MSWordExportBase& m_rExport;
     sal_uInt16 m_aHeadingParagraphStyles[MAXLEVEL];
-    std::unique_ptr<SwFormat*[]> m_pFormatA; ///< Slot <-> Character and 
paragraph style array (0 for list styles).
+    std::vector<SwFormat*> m_aFormatA; ///< Slot <-> Character and paragraph 
style array (0 for list styles).
     sal_uInt16 m_nUsedSlots;
     bool m_bListStyles; ///< If list styles are requested to be exported as 
well.
     std::map<sal_uInt16, const SwNumRule*> m_aNumRules; ///< Slot <-> List 
style map.
@@ -1622,7 +1622,7 @@ public:
     /// Get styleId of the nId-th style (nId is its position in pFormatA).
     OString const & GetStyleId(sal_uInt16 nId) const;
 
-    const SwFormat* GetSwFormat(sal_uInt16 nId) const { return 
m_pFormatA[nId]; }
+    const SwFormat* GetSwFormat(sal_uInt16 nId) const { return 
m_aFormatA[nId]; }
     /// Get numbering rule of the nId-th style
     const SwNumRule* GetSwNumRule(sal_uInt16 nId) const;
     sal_uInt16 GetHeadingParagraphStyleId(sal_uInt16 nLevel) const { return 
m_aHeadingParagraphStyles[ nLevel ]; }
commit 41626006aed655ef35c40312414f44fcad69d17a
Author:     Renwa Hiwa <[email protected]>
AuthorDate: Wed Feb 9 10:02:14 2022 +0000
Commit:     Xisco Fauli <[email protected]>
CommitDate: Fri Feb 11 09:32:47 2022 +0100

    Better handling of inetlocs
    
    LIBREOFFICE-39BBF6YM
    
    Change-Id: Iadae856a524a0ccda238785f60c8f3459e7b6157
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129714
    Reviewed-by: Stephan Bergmann <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    (cherry picked from commit 7484c3393dc2216239cdb730983725fe2e08e730)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129623
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <[email protected]>

diff --git a/shell/source/unix/exec/shellexec.cxx 
b/shell/source/unix/exec/shellexec.cxx
index 87b78fe1d882..9e26cc64b385 100644
--- a/shell/source/unix/exec/shellexec.cxx
+++ b/shell/source/unix/exec/shellexec.cxx
@@ -138,6 +138,7 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, 
const OUString& aPar
                     "XSystemShellExecute.execute, cannot process <" + aCommand 
+ ">", {}, 0);
             } else if (pathname.endsWithIgnoreAsciiCase(".class")
                        || pathname.endsWithIgnoreAsciiCase(".fileloc")
+                       || pathname.endsWithIgnoreAsciiCase(".inetloc")
                        || pathname.endsWithIgnoreAsciiCase(".jar"))
             {
                 dir = true;
commit 454436a92e19aa3cc02b001bd61befe19eb02966
Author:     Jim Raykowski <[email protected]>
AuthorDate: Thu Oct 21 09:09:51 2021 -0800
Commit:     Michael Stahl <[email protected]>
CommitDate: Wed Feb 9 11:08:17 2022 +0100

    SwNavigator: Improve detection of when the content tree needs refreshed
    
    Makes the check that determines if the content tree needs refreshed be
    done only when the content tree is visible AND (the document has been
    modified since previous check OR an action has been made within the
    content tree that requires the tree to be refreshed) AND there is no
    writer shell action pending AND the content tree is not in a DnD.
    
    Change-Id: Ie67472d44573df6afafb08b7b3229a4e07fc9db5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124036
    Tested-by: Jenkins
    Reviewed-by: Jim Raykowski <[email protected]>
    (cherry picked from commit 5c5f36aa73b11356a3bff0a9cc8b5fe8d1a776b9)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129616
    Tested-by: Gabor Kelemen <[email protected]>
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/sw/source/uibase/inc/conttree.hxx 
b/sw/source/uibase/inc/conttree.hxx
index f572bc76a983..5a52954e3da4 100644
--- a/sw/source/uibase/inc/conttree.hxx
+++ b/sw/source/uibase/inc/conttree.hxx
@@ -124,7 +124,8 @@ class SwContentTree final : public SfxListener
     // outline root mode drag & drop
     std::vector<std::unique_ptr<weld::TreeIter>> m_aDndOutlinesSelected;
 
-    bool m_bIgnoreViewChange = false;
+    bool m_bDocHasChanged = true;
+    bool m_bIgnoreDocChange = false; // used to prevent tracking update
 
     /**
      * Before any data will be deleted, the last active entry has to be found.
diff --git a/sw/source/uibase/utlui/content.cxx 
b/sw/source/uibase/utlui/content.cxx
index 5985e21c41dd..31508a7aedf1 100644
--- a/sw/source/uibase/utlui/content.cxx
+++ b/sw/source/uibase/utlui/content.cxx
@@ -2388,7 +2388,7 @@ void SwContentTree::Display( bool bActive )
         }
     }
 
-    if (!m_bIgnoreViewChange && GetEntryCount() == nOldEntryCount)
+    if (!m_bIgnoreDocChange && GetEntryCount() == nOldEntryCount)
     {
         m_xTreeView->vadjustment_set_value(nOldScrollPos);
     }
@@ -2917,9 +2917,9 @@ void SwContentTree::Notify(SfxBroadcaster & rBC, SfxHint 
const& rHint)
             break;
         }
         case SfxHintId::DocChanged:
-            if (!m_bIgnoreViewChange)
+            if (!m_bIgnoreDocChange)
             {
-                m_bViewHasChanged = true;
+                m_bDocHasChanged = true;
                 TimerUpdate(&m_aUpdTimer);
             }
             break;
@@ -2964,7 +2964,7 @@ void SwContentTree::ExecCommand(std::string_view rCmd, 
bool bOutlineWithChildren
         return;
     }
 
-    m_bIgnoreViewChange = true;
+    m_bIgnoreDocChange = true;
 
     SwWrtShell *const pShell = GetWrtShell();
     sal_Int8 nActOutlineLevel = m_nOutlineLevel;
@@ -3253,7 +3253,7 @@ void SwContentTree::ExecCommand(std::string_view rCmd, 
bool bOutlineWithChildren
             }
         }
     }
-    m_bIgnoreViewChange = false;
+    m_bIgnoreDocChange = false;
 }
 
 void SwContentTree::ShowTree()
@@ -3333,37 +3333,43 @@ static void lcl_SelectDrawObjectByName(weld::TreeView& 
rContentTree, std::u16str
 /** No idle with focus or while dragging */
 IMPL_LINK_NOARG(SwContentTree, TimerUpdate, Timer *, void)
 {
+    // No need to update if content tree is not visible
+    if (!m_xTreeView->is_visible())
+        return;
+
     // No update while focus is not in document.
     // No update while drag and drop.
     // Query view because the Navigator is cleared too late.
     SwView* pView = GetParentWindow()->GetCreateView();
     if(pView && pView->GetWrtShellPtr() && pView->GetWrtShellPtr()->GetWin() &&
-        (pView->GetWrtShellPtr()->GetWin()->HasFocus() || m_bViewHasChanged) &&
+        (pView->GetWrtShellPtr()->GetWin()->HasFocus() || m_bDocHasChanged || 
m_bViewHasChanged) &&
         !IsInDrag() && !pView->GetWrtShellPtr()->ActionPend())
     {
-        m_bViewHasChanged = false;
-        m_bIsIdleClear = false;
-        SwWrtShell* pActShell = pView->GetWrtShellPtr();
-        if (State::CONSTANT == m_eState && !lcl_FindShell(m_pActiveShell))
-        {
-            SetActiveShell(pActShell);
-            GetParentWindow()->UpdateListBox();
-        }
-
-        if (State::ACTIVE == m_eState && pActShell != GetWrtShell())
-        {
-            SetActiveShell(pActShell);
-        }
-        else if ((State::ACTIVE == m_eState || (State::CONSTANT == m_eState && 
pActShell == GetWrtShell())) &&
-                    HasContentChanged())
+        if (m_bDocHasChanged || m_bViewHasChanged)
         {
-            FindActiveTypeAndRemoveUserData();
-            Display(true);
+            SwWrtShell* pActShell = pView->GetWrtShellPtr();
+            if (State::CONSTANT == m_eState && !lcl_FindShell(m_pActiveShell))
+            {
+                SetActiveShell(pActShell);
+                GetParentWindow()->UpdateListBox();
+            }
+            if (State::ACTIVE == m_eState && pActShell != GetWrtShell())
+            {
+                SetActiveShell(pActShell);
+            }
+            else if ((State::ACTIVE == m_eState || (State::CONSTANT == 
m_eState && pActShell == GetWrtShell())) &&
+                        HasContentChanged())
+            {
+                FindActiveTypeAndRemoveUserData();
+                Display(true);
+            }
         }
-
         UpdateTracking();
+        m_bIsIdleClear = false;
+        m_bDocHasChanged = false;
+        m_bViewHasChanged = false;
     }
-    else if (!pView && State::ACTIVE == m_eState && !m_bIsIdleClear)
+    else if (!pView && State::ACTIVE == m_eState && !m_bIsIdleClear) // this 
block seems never to be entered
     {
         if(m_pActiveShell)
         {
@@ -3379,10 +3385,10 @@ void SwContentTree::UpdateTracking()
     if (State::HIDDEN == m_eState || !m_pActiveShell)
         return;
 
-    // m_bIgnoreViewChange is set on delete
-    if (m_bIgnoreViewChange)
+    // m_bIgnoreDocChange is set on delete and outline visibility toggle
+    if (m_bIgnoreDocChange)
     {
-        m_bIgnoreViewChange = false;
+        m_bIgnoreDocChange = false;
         return;
     }
 
@@ -3995,7 +4001,7 @@ void SwContentTree::ExecuteContextMenuAction(const 
OString& rSelectedPopupEntry)
         case SHOW_OUTLINE_CONTENT_VISIBILITY:
         {
             m_pActiveShell->EnterStdMode();
-            m_bIgnoreViewChange = true;
+            m_bIgnoreDocChange = true;
             SwOutlineContent* pCntFirst = 
reinterpret_cast<SwOutlineContent*>(m_xTreeView->get_id(*xFirst).toInt64());
 
             // toggle the outline node outline content visible attribute
@@ -4032,7 +4038,7 @@ void SwContentTree::ExecuteContextMenuAction(const 
OString& rSelectedPopupEntry)
             else
                 m_pActiveShell->GotoOutline(pCntFirst->GetOutlinePos());
             grab_focus();
-            m_bIgnoreViewChange = false;
+            m_bIgnoreDocChange = false;
         }
         break;
         case 11:
@@ -4324,7 +4330,7 @@ void SwContentTree::EditEntry(const weld::TreeIter& 
rEntry, EditEntryMode nMode)
     sal_uInt16 nSlot = 0;
 
     if(EditEntryMode::DELETE == nMode)
-        m_bIgnoreViewChange = true;
+        m_bIgnoreDocChange = true;
 
     uno::Reference< container::XNameAccess >  xNameAccess, xSecond, xThird;
     switch(nType)
commit 23821b60107d4d2e46f8f0e17b016bc84379b29e
Author:     Eike Rathke <[email protected]>
AuthorDate: Sat Feb 5 22:43:13 2022 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Mon Feb 7 17:06:41 2022 +0100

    Resolves: tdf#74577 tdf#92960 Create missing offsets in very outer table
    
    ... if local table is outer table.
    
    Change-Id: I5996609264f4ad9efa8d76a8d0ab730bf1dded24
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129540
    Reviewed-by: Eike Rathke <[email protected]>
    Tested-by: Jenkins
    (cherry picked from commit 8a9b870a40c41c7cae6e43452b593804fa17f831)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129550
    Reviewed-by: Adolfo Jayme Barrientos <[email protected]>
    (cherry picked from commit 2ea7055ea6115051a92c66a439b02d83bb067db7)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129561
    Reviewed-by: Xisco Fauli <[email protected]>

diff --git a/sc/source/filter/html/htmlpars.cxx 
b/sc/source/filter/html/htmlpars.cxx
index 5ea874ac8841..7e735054a9db 100644
--- a/sc/source/filter/html/htmlpars.cxx
+++ b/sc/source/filter/html/htmlpars.cxx
@@ -755,6 +755,16 @@ void ScHTMLLayoutParser::SetWidths()
         sal_uInt16 nMax = static_cast<sal_uInt16>(pLocalColOffset->back());
         if ( aPageSize.Width() < nMax )
             aPageSize.setWidth( nMax );
+        if (nTableLevel == 0)
+        {
+            // Local table is very outer table, create missing offsets.
+            for (auto it = pLocalColOffset->begin(); it != 
pLocalColOffset->end(); ++it)
+            {
+                // Only exact offsets, do not use MakeColNoRef().
+                if (maColOffset.find(*it) == maColOffset.end())
+                    maColOffset.insert(*it);
+            }
+        }
     }
     for ( size_t i = nFirstTableCell, nListSize = maList.size(); i < 
nListSize; ++i )
     {
commit 3fa7c7618500bf5914e19cb3714f301f7bff305a
Author:     Mike Kaganski <[email protected]>
AuthorDate: Sun Jan 30 14:12:46 2022 +0300
Commit:     Xisco Fauli <[email protected]>
CommitDate: Mon Feb 7 17:06:31 2022 +0100

    tdf#132388: reimplement fix for tdf#142487
    
    Each call to css::i18n::XTextSearch::SearchForward transliterates input 
string,
    making performance of repeated calls unacceptable. So prepare the 
transliterated
    strings once, and use the offset sequence to map search results to indices 
into
    original string.
    
    Change-Id: Ie08dd5a408aca9a950067db285a480b41a3f9a16
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129162
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <[email protected]>
    Signed-off-by: Xisco Fauli <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129208
    (cherry picked from commit 8efa3dd53aaf98ed258c9f340800504c9e874b78)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129257

diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index e3a30f324525..d4a4ce74ed0a 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -68,7 +68,7 @@
 #include <o3tl/char16_t2wchar_t.hxx>
 
 // include search util
-#include <com/sun/star/util/SearchFlags.hpp>
+#include <com/sun/star/i18n/Transliteration.hpp>
 #include <com/sun/star/util/SearchAlgorithms2.hpp>
 #include <i18nutil/searchopt.hxx>
 #include <unotools/textsearch.hxx>
@@ -1269,6 +1269,7 @@ void SbRtl_Replace(StarBASIC *, SbxArray & rPar, bool)
             return;
         }
     }
+    --lStartPos; // Make it 0-based
 
     sal_Int32 lCount = -1;
     if (nArgCount >= 5)
@@ -1304,40 +1305,52 @@ void SbRtl_Replace(StarBASIC *, SbxArray & rPar, bool)
     }
 
     const OUString aExpStr = rPar.Get(1)->GetOUString();
-    const OUString aFindStr = rPar.Get(2)->GetOUString();
+    OUString aFindStr = rPar.Get(2)->GetOUString();
     const OUString aReplaceStr = rPar.Get(3)->GetOUString();
-    const sal_Int32 nExpStrLen = aExpStr.getLength();
-    const sal_Int32 nFindStrLen = aFindStr.getLength();
 
-    // tdf#142487 - use utl::TextSearch in order to implement the replace 
algorithm
-    i18nutil::SearchOptions2 aSearchOptions;
-    aSearchOptions.searchString = aFindStr;
-    aSearchOptions.AlgorithmType2 = util::SearchAlgorithms2::ABSOLUTE;
+    OUString aSrcStr(aExpStr);
+    sal_Int32 nPrevPos = std::min(lStartPos, aSrcStr.getLength());
+    css::uno::Sequence<sal_Int32> aOffset;
     if (bCaseInsensitive)
-        aSearchOptions.transliterateFlags |= TransliterationFlags::IGNORE_CASE;
-    utl::TextSearch textSearch(aSearchOptions);
+    {
+        // tdf#132389: case-insensitive operation for non-ASCII characters
+        // tdf#142487: use css::i18n::Transliteration to correctly handle ß -> 
ss expansion
+        // tdf#132388: We can't use utl::TextSearch (css::i18n::XTextSearch), 
because each call to
+        //             css::i18n::XTextSearch::SearchForward transliterates 
input string, making
+        //             performance of repeated calls unacceptable
+        auto xTrans = 
css::i18n::Transliteration::create(comphelper::getProcessComponentContext());
+        xTrans->loadModule(css::i18n::TransliterationModules_IGNORE_CASE, {});
+        aFindStr = xTrans->transliterate(aFindStr, 0, aFindStr.getLength(), 
aOffset);
+        aSrcStr = xTrans->transliterate(aSrcStr, nPrevPos, aSrcStr.getLength() 
- nPrevPos, aOffset);
+        nPrevPos = std::distance(aOffset.begin(),
+                                 std::lower_bound(aOffset.begin(), 
aOffset.end(), nPrevPos));
+    }
+
+    auto getExpStrPos = [aOffset, nExpLen = aExpStr.getLength()](sal_Int32 
nSrcStrPos) -> sal_Int32
+    {
+        assert(!aOffset.hasElements() || aOffset.getLength() >= nSrcStrPos);
+        if (!aOffset.hasElements())
+            return nSrcStrPos;
+        return aOffset.getLength() > nSrcStrPos ? aOffset[nSrcStrPos] : 
nExpLen;
+    };
 
     // Note: the result starts from lStartPos, removing everything to the 
left. See i#94895.
-    sal_Int32 nPrevPos = std::min(lStartPos - 1, nExpStrLen);
-    OUStringBuffer sResult(nExpStrLen - nPrevPos);
+    OUStringBuffer sResult(aSrcStr.getLength() - nPrevPos);
     sal_Int32 nCounts = 0;
     while (lCount == -1 || lCount > nCounts)
     {
-        sal_Int32 nStartPos = nPrevPos;
-        sal_Int32 aEndPos = aExpStr.getLength();
-        if (textSearch.SearchForward(aExpStr, &nStartPos, &aEndPos))
-        {
-            sResult.append(aExpStr.getStr() + nPrevPos, nStartPos - nPrevPos);
-            sResult.append(aReplaceStr);
-            nPrevPos = nStartPos + nFindStrLen;
-            nCounts++;
-        }
-        else
-        {
+        sal_Int32 nPos = aSrcStr.indexOf(aFindStr, nPrevPos);
+        if (nPos < 0)
             break;
-        }
+
+        lStartPos = getExpStrPos(nPrevPos);
+        sResult.append(aExpStr.getStr() + lStartPos, getExpStrPos(nPos) - 
lStartPos);
+        sResult.append(aReplaceStr);
+        nPrevPos = nPos + aFindStr.getLength();
+        nCounts++;
     }
-    sResult.append(aExpStr.getStr() + nPrevPos, nExpStrLen - nPrevPos);
+    lStartPos = getExpStrPos(nPrevPos);
+    sResult.append(aExpStr.getStr() + lStartPos, aExpStr.getLength() - 
lStartPos);
     rPar.Get(0)->PutString(sResult.makeStringAndClear());
 }
 
commit de72b5f7dd3893ef0d4655cb7943ac0e8ed3c81d
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sat Feb 5 20:38:53 2022 +0000
Commit:     Michael Stahl <[email protected]>
CommitDate: Mon Feb 7 15:14:06 2022 +0100

    qt5: crash entering ë with french IM
    
    which for me with french IM enabled on my keyboard is physically
    AltGr+[ (crashes here on trying to underline ¨ with a length of 2)
    then e.
    
    Change-Id: Id59bd84af2ab4d8403b11b1a13efb2bbdb608199
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129539
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/vcl/qt5/Qt5Widget.cxx b/vcl/qt5/Qt5Widget.cxx
index 6cb548c0d028..02bc22ee3d44 100644
--- a/vcl/qt5/Qt5Widget.cxx
+++ b/vcl/qt5/Qt5Widget.cxx
@@ -664,7 +664,15 @@ void Qt5Widget::inputMethodEvent(QInputMethodEvent* pEvent)
                         if (aCharFormat.fontStrikeOut())
                             aETIP |= ExtTextInputAttr::RedText;
                         for (int j = rAttr.start; j < rAttr.start + 
rAttr.length; j++)
+                        {
+                            SAL_WARN_IF(j >= 
static_cast<int>(aTextAttrs.size()), "vcl.qt5",
+                                        "QInputMethodEvent::Attribute out of 
range. Broken range: "
+                                            << rAttr.start << "," << 
rAttr.start + rAttr.length
+                                            << " Legal range: 0," << 
aTextAttrs.size());
+                            if (j >= static_cast<int>(aTextAttrs.size()))
+                                break;
                             aTextAttrs[j] = aETIP;
+                        }
                     }
                     break;
                 }
commit 4aca1392079f16a32d0caeb52a8871163413da09
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sat Feb 5 19:01:45 2022 +0000
Commit:     Adolfo Jayme Barrientos <[email protected]>
CommitDate: Sun Feb 6 14:08:58 2022 +0100

    Resolves: tdf#147218 label doesn't have use-underline set
    
    so the _ is shown to the user, not used to add an underline
    
    Change-Id: I2de707a2d1da8d842ef03497f9b8f69d37368f12
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129443
    Tested-by: Adolfo Jayme Barrientos <[email protected]>
    Reviewed-by: Adolfo Jayme Barrientos <[email protected]>

diff --git a/vcl/uiconfig/ui/printdialog.ui b/vcl/uiconfig/ui/printdialog.ui
index f289f482a544..4084057c6564 100644
--- a/vcl/uiconfig/ui/printdialog.ui
+++ b/vcl/uiconfig/ui/printdialog.ui
@@ -1036,6 +1036,7 @@
                                                   <object class="GtkLabel" 
id="pagespersheettxt">
                                                     <property 
name="visible">True</property>
                                                     <property 
name="can-focus">False</property>
+                                                    <property 
name="use-underline">True</property>
                                                   </object>
                                                   <packing>
                                                     <property 
name="expand">False</property>
commit 61339f316ec7a91733b62ca667faeca0b75297e9
Author:     Caolán McNamara <[email protected]>
AuthorDate: Wed Feb 2 12:59:49 2022 +0000
Commit:     Adolfo Jayme Barrientos <[email protected]>
CommitDate: Fri Feb 4 15:39:25 2022 +0100

    tdf#125849 cannot modify the ruler unit of measure in translated UI
    
    Change-Id: Ica74dd5e55d30605ee03affa4b724ffa4ec65b5a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129334
    Tested-by: Jenkins
    Reviewed-by: Adolfo Jayme Barrientos <[email protected]>

diff --git a/include/vcl/fieldvalues.hxx b/include/vcl/fieldvalues.hxx
index e8f78bd5e119..b00fc5a47128 100644
--- a/include/vcl/fieldvalues.hxx
+++ b/include/vcl/fieldvalues.hxx
@@ -29,7 +29,8 @@ class LocaleDataWrapper;
 
 namespace vcl
 {
-VCL_DLLPUBLIC FieldUnit StringToMetric(const OUString& rMetricString);
+VCL_DLLPUBLIC FieldUnit EnglishStringToMetric(const OUString& 
rEnglishMetricString);
+
 VCL_DLLPUBLIC bool TextToValue(const OUString& rStr, double& rValue, sal_Int64 
nBaseValue,
                                sal_uInt16 nDecDigits, const LocaleDataWrapper& 
rLocaleDataWrapper,
                                FieldUnit eUnit);
diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx
index e6b57aac5fb7..6b27d7ce722d 100644
--- a/svx/source/dialog/svxruler.cxx
+++ b/svx/source/dialog/svxruler.cxx
@@ -3257,7 +3257,7 @@ void SvxRuler::MenuSelect(std::string_view ident)
     if (ident.empty())
         return;
     /* Handler of the context menus for switching the unit of measurement */
-    SetUnit(vcl::StringToMetric(OUString::fromUtf8(ident)));
+    SetUnit(vcl::EnglishStringToMetric(OUString::fromUtf8(ident)));
 }
 
 void SvxRuler::TabMenuSelect(const OString& rIdent)
@@ -3338,7 +3338,7 @@ void SvxRuler::Command( const CommandEvent& rCommandEvent 
)
             for ( sal_uInt16 i = nCount; i; --i )
             {
                 OString sIdent = xMenu->get_id(i - 1);
-                FieldUnit eMenuUnit = 
vcl::StringToMetric(OUString::fromUtf8(sIdent));
+                FieldUnit eMenuUnit = 
vcl::EnglishStringToMetric(OUString::fromUtf8(sIdent));
                 xMenu->set_active(sIdent, eMenuUnit == eUnit);
                 if( bReduceMetric )
                 {
diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx
index 1d1375b24d7b..7d815ad0acc9 100644
--- a/vcl/source/app/svdata.cxx
+++ b/vcl/source/app/svdata.cxx
@@ -29,6 +29,7 @@
 #include <vcl/QueueInfo.hxx>
 #include <vcl/cvtgrf.hxx>
 #include <vcl/dockwin.hxx>
+#include <vcl/fieldvalues.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/print.hxx>
 #include <vcl/settings.hxx>
@@ -277,6 +278,22 @@ const FieldUnitStringList& ImplGetFieldUnits()
     return pSVData->maCtrlData.maFieldUnitStrings;
 }
 
+namespace vcl
+{
+    FieldUnit EnglishStringToMetric(const OUString& rEnglishMetricString)
+    {
+        sal_uInt32 nUnits = SAL_N_ELEMENTS(SV_FUNIT_STRINGS);
+        for (sal_uInt32 i = 0; i < nUnits; ++i)
+        {
+            const char *pId = strchr(SV_FUNIT_STRINGS[i].first, '\004');
+            assert(pId);
+            if (rEnglishMetricString.equalsAscii(pId+1))
+                return SV_FUNIT_STRINGS[i].second;
+        }
+        return FieldUnit::NONE;
+    }
+}
+
 const FieldUnitStringList& ImplGetCleanedFieldUnits()
 {
     ImplSVData* pSVData = ImplGetSVData();
diff --git a/vcl/source/control/field.cxx b/vcl/source/control/field.cxx
index cc5a6330d1a9..281566ed174a 100644
--- a/vcl/source/control/field.cxx
+++ b/vcl/source/control/field.cxx
@@ -960,7 +960,7 @@ static OUString ImplMetricToString( FieldUnit rUnit )
     return OUString();
 }
 
-namespace vcl
+namespace
 {
     FieldUnit StringToMetric(const OUString &rMetricString)
     {
@@ -979,7 +979,7 @@ namespace vcl
 static FieldUnit ImplMetricGetUnit(const OUString& rStr)
 {
     OUString aStr = ImplMetricGetUnitText(rStr);
-    return vcl::StringToMetric(aStr);
+    return StringToMetric(aStr);
 }
 
 static FieldUnit ImplMap2FieldUnit( MapUnit meUnit, tools::Long& nDecDigits )
commit 04b4c269fc2e4001eb37c4b2c34a023a44ca6ebe
Author:     Miklos Vajna <[email protected]>
AuthorDate: Wed Feb 2 16:02:19 2022 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Fri Feb 4 09:12:15 2022 +0100

    tdf#137920 sw: avoid layout loop when inserting at-char anchored large image
    
    Regression from commit d250ca91c79f457102daf4da81446b7f130fb0ee (sw:
    insert image: set anchor to at-char by default, 2019-11-18), the problem
    was that the document has 2 pages, the first page would host the anchor
    of an inserted image and looped while creating/deleting a next page
    frame when updating the layout on inserting of an image.
    
    This problem was less visible before, as the at-para anchor is a
    different codepath, which was the previous default.
    
    The primary problem is that the loop in SwLayAction::Action() assumes
    that we make progress, so in case m_bAgain is set, then doing the layout
    again won't re-set m_bAgain, but it happened here.
    
    That happens because each iteration calls SwFrame::InsertPage(),
    followed by a SwPageFrame::DestroyImpl(). Examining the backtrace of the
    SwPageFrame ctor leads to SwTextFrame::FormatAdjust() which tries to
    split the text frame only in case it has either a number portion or a
    text portion, but the check there was incomplete: a "none" number format
    results in no number portion, leading to this loop.
    
    Fix the problem by checking for HasVisibleNumberingOrBullet() before
    assuming that we can split an empty text frame into two pieces where at
    least one of them is not empty.
    
    (cherry picked from commit 3e9975cf507e24e9c501575c501833164d217acc)
    
    Change-Id: I454e1ec275ad6c00202e65b97adb79647d11a0b7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129395
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>
    Signed-off-by: Xisco Fauli <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129410

diff --git a/sw/qa/core/text/data/empty-numbering-page-split.fodt 
b/sw/qa/core/text/data/empty-numbering-page-split.fodt
new file mode 100644
index 000000000000..517ad2e0fb26
--- /dev/null
+++ b/sw/qa/core/text/data/empty-numbering-page-split.fodt
@@ -0,0 +1,62 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<office:document xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
+  <office:styles>
+    <style:default-style style:family="paragraph">
+      <style:text-properties fo:font-size="12pt"/>
+    </style:default-style>
+    <style:style style:name="Standard" style:family="paragraph" 
style:class="text"/>
+    <style:style style:name="Heading" style:family="paragraph" 
style:parent-style-name="Standard" style:next-style-name="Text_20_body" 
style:class="text">
+      <style:paragraph-properties fo:margin-top="0.423cm" 
fo:margin-bottom="0.212cm" style:contextual-spacing="false" 
fo:keep-with-next="always"/>
+      <style:text-properties fo:font-size="14pt"/>
+    </style:style>
+    <style:style style:name="Text_20_body" style:display-name="Text body" 
style:family="paragraph" style:parent-style-name="Standard" style:class="text">
+      <style:paragraph-properties fo:margin-top="0cm" 
fo:margin-bottom="0.212cm"/>
+    </style:style>
+    <style:style style:name="Heading_20_1" style:display-name="Heading 1" 
style:family="paragraph" style:parent-style-name="Heading" style:class="text">
+      <style:paragraph-properties fo:margin-top="0.423cm" 
fo:margin-bottom="0.212cm" fo:break-before="page"/>
+    </style:style>
+    <text:outline-style style:name="Outline">
+      <text:outline-level-style text:level="1" style:num-format="">
+        <style:list-level-properties text:min-label-distance="0.381cm"/>
+      </text:outline-level-style>
+    </text:outline-style>
+  </office:styles>
+  <office:automatic-styles>
+    <style:style style:name="P1" style:family="paragraph" 
style:parent-style-name="Standard" style:master-page-name="Intro">
+      <style:paragraph-properties style:page-number="1"/>
+    </style:style>
+    <style:page-layout style:name="pm1">
+      <style:page-layout-properties fo:page-width="21.001cm" 
fo:page-height="29.7cm" fo:margin-top="2cm" fo:margin-bottom="2cm" 
fo:margin-left="2cm" fo:margin-right="2cm"/>
+      <style:header-style>
+        <style:header-footer-properties fo:min-height="0cm" 
fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-bottom="0cm"/>
+      </style:header-style>
+      <style:footer-style>
+        <style:header-footer-properties fo:min-height="0.6cm" 
fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.499cm" 
style:dynamic-spacing="false"/>
+      </style:footer-style>
+    </style:page-layout>
+    <style:page-layout style:name="pm2">
+      <style:page-layout-properties fo:page-width="21.001cm" 
fo:page-height="29.7cm" fo:margin-top="2cm" fo:margin-bottom="2cm" 
fo:margin-left="2cm" fo:margin-right="2cm"/>
+      <style:header-style>
+        <style:header-footer-properties fo:min-height="0cm" 
fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-bottom="0.499cm"/>
+      </style:header-style>
+      <style:footer-style/>
+    </style:page-layout>
+  </office:automatic-styles>
+  <office:master-styles>
+    <style:master-page style:name="Standard" style:page-layout-name="pm1" 
style:next-style-name="Intro">
+      <style:header>
+        <text:p/>
+      </style:header>
+      <style:footer>
+        <text:p/>
+      </style:footer>
+    </style:master-page>
+    <style:master-page style:name="Intro" style:page-layout-name="pm2"/>
+  </office:master-styles>
+  <office:body>
+    <office:text text:use-soft-page-breaks="true">
+      <text:h text:style-name="Heading_20_1" text:outline-level="1"/>
+      <text:p text:style-name="P1"/>
+    </office:text>
+  </office:body>
+</office:document>
diff --git a/sw/qa/core/text/data/image.png b/sw/qa/core/text/data/image.png
new file mode 100644
index 000000000000..49e71b07ae8b
Binary files /dev/null and b/sw/qa/core/text/data/image.png differ
diff --git a/sw/qa/core/text/text.cxx b/sw/qa/core/text/text.cxx
index 4db880e687f4..5f1b89e34247 100644
--- a/sw/qa/core/text/text.cxx
+++ b/sw/qa/core/text/text.cxx
@@ -135,6 +135,22 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, 
testTabOverMarginSection)
     CPPUNIT_ASSERT_LESS(static_cast<sal_Int32>(5000), nWidth);
 }
 
+CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testEmptyNumberingPageSplit)
+{
+    // Given a document with 2 pages: the only para on page 1 is a numbering 
without a number
+    // portion:
+    createSwDoc(DATA_DIRECTORY, "empty-numbering-page-split.fodt");
+
+    // When inserting an image that doesn't fit the body frame:
+    // Then make sure that the layout update after insertion finishes:
+    uno::Sequence<beans::PropertyValue> aArgs = {
+        comphelper::makePropertyValue("FileName",
+                                      
m_directories.getURLFromSrc(DATA_DIRECTORY) + "image.png"),
+    };
+    // Without the accompanying fix in place, this never finished.
+    dispatchCommand(mxComponent, ".uno:InsertGraphic", aArgs);
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/text/frmform.cxx b/sw/source/core/text/frmform.cxx
index f9f6935e9a9d..bdd3f1d9d17c 100644
--- a/sw/source/core/text/frmform.cxx
+++ b/sw/source/core/text/frmform.cxx
@@ -1117,13 +1117,21 @@ void SwTextFrame::FormatAdjust( SwTextFormatter &rLine,
         }
         else
         {
+            const SwTextNode* pTextNode = GetTextNodeForParaProps();
+            bool bHasVisibleNumRule = nStrLen == TextFrameIndex(0) && 
pTextNode->GetNumRule();
+
+            if (!pTextNode->HasVisibleNumberingOrBullet())
+            {
+                bHasVisibleNumRule = false;
+            }
+
             // Only split frame, if the frame contains
             // content or contains no content, but has a numbering.
             // i#84870 - No split, if text frame only contains one
             // as-character anchored object.
             if ( !bOnlyContainsAsCharAnchoredObj &&
                  (nStrLen > TextFrameIndex(0) ||
-                   (nStrLen == TextFrameIndex(0) && 
GetTextNodeForParaProps()->GetNumRule()))
+                   bHasVisibleNumRule )
                )
             {
                 SplitFrame( nEnd );
commit 6694e3ea9c2f05a20245d94c5c1eda955cb3aacc
Author:     zhutyra <zhutyra>
AuthorDate: Tue Feb 1 13:54:55 2022 +0000
Commit:     Michael Stahl <[email protected]>
CommitDate: Thu Feb 3 12:01:14 2022 +0100

    read of width/height uses wrong record size
    
    this initially went wrong at:
    
    commit b4fb7a437bb0ce987702b12008737756623618ac
    Date:   Mon May 23 21:38:40 2011 +0100
    
        fix up some more endian
    
    LIBREOFFICE-SBQ5TJRS
    
    Change-Id: Ie418f530f55288351f73f3c0cbab9ac48e6b6964
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129259
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/lotuswordpro/source/filter/lwpdrawobj.cxx 
b/lotuswordpro/source/filter/lwpdrawobj.cxx
index 11bc3bcb5a98..f1abe2c438f3 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.cxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.cxx
@@ -1388,8 +1388,12 @@ void LwpDrawBitmap::Read()
 
     if (aInfoHeader2.nHeaderLen == sizeof(BmpInfoHeader))
     {
-        m_pStream->ReadUInt32( aInfoHeader2.nWidth );
-        m_pStream->ReadUInt32( aInfoHeader2.nHeight );
+        sal_uInt16 nTmp;
+
+        m_pStream->ReadUInt16( nTmp );
+        aInfoHeader2.nWidth = nTmp;
+        m_pStream->ReadUInt16( nTmp );
+        aInfoHeader2.nHeight = nTmp;
         m_pStream->ReadUInt16( aInfoHeader2.nPlanes );
         m_pStream->ReadUInt16( aInfoHeader2.nBitCount );
 
commit 17dd787a4ca9c17883e0bdfc75c89c2fa7ec169e
Author:     zhutyra <zhutyra>
AuthorDate: Tue Feb 1 14:07:26 2022 +0000
Commit:     Michael Stahl <[email protected]>
CommitDate: Thu Feb 3 11:59:31 2022 +0100

    ensure bounds checking
    
    LIBREOFFICE-SBQ5TJRS
    
    Change-Id: I71f35bc120fdd70298685131f29a6bb822d50f11
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129261
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/lotuswordpro/source/filter/lwpdrawobj.cxx 
b/lotuswordpro/source/filter/lwpdrawobj.cxx
index ce3f5249786d..11bc3bcb5a98 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.cxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.cxx
@@ -1369,21 +1369,20 @@ void LwpDrawBitmap::Read()
     m_pStream->ReadUInt16( m_aBmpRec.nTranslation );
     m_pStream->ReadUInt16( m_aBmpRec.nRotation );
 
+    // 20 == length of draw-specific fields.
     if (m_aObjHeader.nRecLen < 20)
         throw BadRead();
 
-    // 20 == length of draw-specific fields.
-    // 14 == length of bmp file header.
-    m_aBmpRec.nFileSize = m_aObjHeader.nRecLen - 20 + 14;
+    sal_uInt64 nBmpPos = m_pStream->Tell();
+    sal_uInt64 nBmpLen =
+        std::min<sal_uInt64>(m_aObjHeader.nRecLen - 20, 
m_pStream->remainingSize());
 
     BmpInfoHeader2 aInfoHeader2;
     m_pStream->ReadUInt32( aInfoHeader2.nHeaderLen );
 
-    if (!m_pStream->good())
+    if (!m_pStream->good() || nBmpLen < aInfoHeader2.nHeaderLen)
         throw BadRead();
 
-    m_pImageData.reset( new sal_uInt8 [m_aBmpRec.nFileSize] );
-
     sal_uInt32 N;
     sal_uInt32 rgbTableSize;
 
@@ -1407,7 +1406,7 @@ void LwpDrawBitmap::Read()
             rgbTableSize = 3 * (1 << N);
         }
     }
-    else
+    else if (aInfoHeader2.nHeaderLen >= sizeof(BmpInfoHeader2))
     {
         m_pStream->ReadUInt32( aInfoHeader2.nWidth );
         m_pStream->ReadUInt32( aInfoHeader2.nHeight );
@@ -1426,9 +1425,15 @@ void LwpDrawBitmap::Read()
         {
             rgbTableSize = 4 * (1 << N);
         }
-
+    }
+    else
+    {
+        throw BadRead();
     }
 
+    m_aBmpRec.nFileSize = static_cast<sal_uInt32>(nBmpLen + 14);
+    m_pImageData.reset( new sal_uInt8 [m_aBmpRec.nFileSize] );
+
     sal_uInt32 nOffBits = 14 + aInfoHeader2.nHeaderLen + rgbTableSize;
     m_pImageData[0] = 'B';
     m_pImageData[1] = 'M';
@@ -1445,50 +1450,10 @@ void LwpDrawBitmap::Read()
     m_pImageData[12] = static_cast<sal_uInt8>(nOffBits >> 16);
     m_pImageData[13] = static_cast<sal_uInt8>(nOffBits >> 24);
 
-    sal_uInt32 nDIBRemaining;
     sal_uInt8* pPicData = m_pImageData.get();
-    if (aInfoHeader2.nHeaderLen== sizeof(BmpInfoHeader))
-    {
-        m_pImageData[14] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen);
-        m_pImageData[15] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
8);
-        m_pImageData[16] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
16);
-        m_pImageData[17] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
24);
-        m_pImageData[18] = static_cast<sal_uInt8>(aInfoHeader2.nWidth);
-        m_pImageData[19] = static_cast<sal_uInt8>(aInfoHeader2.nWidth >> 8);
-        m_pImageData[20] = static_cast<sal_uInt8>(aInfoHeader2.nHeight);
-        m_pImageData[21] = static_cast<sal_uInt8>(aInfoHeader2.nHeight >> 8);
-        m_pImageData[22] = static_cast<sal_uInt8>(aInfoHeader2.nPlanes);
-        m_pImageData[23] = static_cast<sal_uInt8>(aInfoHeader2.nPlanes >> 8);
-        m_pImageData[24] = static_cast<sal_uInt8>(aInfoHeader2.nBitCount);
-        m_pImageData[25] = static_cast<sal_uInt8>(aInfoHeader2.nBitCount >> 8);
-
-        nDIBRemaining = m_aBmpRec.nFileSize - 26;
-        pPicData += 26*sizeof(sal_uInt8);
-    }
-    else
-    {
-        m_pImageData[14] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen);
-        m_pImageData[15] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
8);
-        m_pImageData[16] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
16);
-        m_pImageData[17] = static_cast<sal_uInt8>(aInfoHeader2.nHeaderLen >> 
24);
-        m_pImageData[18] = static_cast<sal_uInt8>(aInfoHeader2.nWidth);
-        m_pImageData[19] = static_cast<sal_uInt8>(aInfoHeader2.nWidth >> 8);
-        m_pImageData[20] = static_cast<sal_uInt8>(aInfoHeader2.nWidth >> 16);
-        m_pImageData[21] = static_cast<sal_uInt8>(aInfoHeader2.nWidth >> 24);
-        m_pImageData[22] = static_cast<sal_uInt8>(aInfoHeader2.nHeight);
-        m_pImageData[23] = static_cast<sal_uInt8>(aInfoHeader2.nHeight >> 8);
-        m_pImageData[24] = static_cast<sal_uInt8>(aInfoHeader2.nHeight >> 16);
-        m_pImageData[25] = static_cast<sal_uInt8>(aInfoHeader2.nHeight >> 24);
-        m_pImageData[26] = static_cast<sal_uInt8>(aInfoHeader2.nPlanes);
-        m_pImageData[27] = static_cast<sal_uInt8>(aInfoHeader2.nPlanes >> 8);
-        m_pImageData[28] = static_cast<sal_uInt8>(aInfoHeader2.nBitCount);
-        m_pImageData[29] = static_cast<sal_uInt8>(aInfoHeader2.nBitCount >> 8);
-
-        nDIBRemaining = m_aBmpRec.nFileSize - 30;
-        pPicData += 30*sizeof(sal_uInt8);
-    }
 
-    if (nDIBRemaining != m_pStream->ReadBytes(pPicData, nDIBRemaining))
+    m_pStream->Seek(nBmpPos);
+    if (nBmpLen != m_pStream->ReadBytes(pPicData + 14, nBmpLen))
         throw BadRead();
 }
 
commit d5e470882c7538716a9810d757e7481304e9724e
Author:     Justin Luth <[email protected]>
AuthorDate: Wed Feb 2 13:56:22 2022 +0200
Commit:     Xisco Fauli <[email protected]>
CommitDate: Thu Feb 3 10:44:16 2022 +0100

    tdf#147115 writerfilter: style is only default if default=true
    
    This was a dumb mistake in LO 2018 (so perhaps LO 6.2).
    Regression from commit 6b7f12f6108f136d60bd77e3787ef6a2632038cd
    
    Change-Id: I2adc642ffe9c2af1037fcc0a5d2b83c993511258
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129386
    Tested-by: Jenkins
    Reviewed-by: Justin Luth <[email protected]>
    (cherry picked from commit 71303d77febfd51a493ce797933143cc318818cf)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129339
    Reviewed-by: Xisco Fauli <[email protected]>
    (cherry picked from commit 8e9830755c17c3351f074b251f30f3216b481214)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129340

diff --git a/sw/qa/extras/ooxmlexport/data/tdf147115_defaultStyle.docx 
b/sw/qa/extras/ooxmlexport/data/tdf147115_defaultStyle.docx
new file mode 100644
index 000000000000..e75099c6aa9e
Binary files /dev/null and 
b/sw/qa/extras/ooxmlexport/data/tdf147115_defaultStyle.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
index 17f05d1dcd16..a32862ac7b9a 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
@@ -361,6 +361,11 @@ DECLARE_OOXMLEXPORT_TEST(testDefaultStyle, 
"defaultStyle.docx")
     CPPUNIT_ASSERT_EQUAL(2, getPages());
 }
 
+DECLARE_OOXMLEXPORT_TEST(testTdf147115_defaultStyle, 
"tdf147115_defaultStyle.docx")
+{
+    CPPUNIT_ASSERT_EQUAL_MESSAGE( "Default Style", OUString("Standard"), 
getProperty<OUString>(getParagraph(1), "ParaStyleName") );
+}
+
 DECLARE_OOXMLEXPORT_TEST(testTdf117988, "tdf117988.docx")
 {
     CPPUNIT_ASSERT_EQUAL(1, getPages());
diff --git a/writerfilter/source/dmapper/StyleSheetTable.cxx 
b/writerfilter/source/dmapper/StyleSheetTable.cxx
index ba3b0d97550e..70f36fac78d4 100644
--- a/writerfilter/source/dmapper/StyleSheetTable.cxx
+++ b/writerfilter/source/dmapper/StyleSheetTable.cxx
@@ -467,8 +467,12 @@ void StyleSheetTable::lcl_attribute(Id Name, Value & val)
             if (m_pImpl->m_pCurrentEntry->nStyleTypeCode != STYLE_TYPE_UNKNOWN)
             {
                 // "If this attribute is specified by multiple styles, then 
the last instance shall be used."
-                if ( m_pImpl->m_pCurrentEntry->nStyleTypeCode == 
STYLE_TYPE_PARA && !m_pImpl->m_pCurrentEntry->sStyleIdentifierD.isEmpty() )
+                if (m_pImpl->m_pCurrentEntry->bIsDefaultStyle
+                    && m_pImpl->m_pCurrentEntry->nStyleTypeCode == 
STYLE_TYPE_PARA
+                    && !m_pImpl->m_pCurrentEntry->sStyleIdentifierD.isEmpty())
+                {
                     m_pImpl->m_sDefaultParaStyleName = 
m_pImpl->m_pCurrentEntry->sStyleIdentifierD;
+                }
 
                 beans::PropertyValue aValue;
                 aValue.Name = "default";
commit b8b4dd7e909a46fe1777a64124d5fa0187a1ad70
Author:     Caolán McNamara <[email protected]>
AuthorDate: Mon Jan 31 20:40:52 2022 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 1 11:14:04 2022 +0100

    tdf#147032 unselect anything set_cursor selected as its side-effect
    
    Change-Id: I723bbd82fc01f644de3bfb2a80b4640cec0cfbca
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129250
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/sd/source/ui/animations/CustomAnimationList.cxx 
b/sd/source/ui/animations/CustomAnimationList.cxx
index 3c67edc5c831..4f366979e20e 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -815,6 +815,8 @@ void CustomAnimationList::update()
             } while (mxTreeView->iter_next(*xEntry));
         }
 
+        // tdf#147032 unselect what previous set_cursor may have caused to get 
selected as a side-effect
+        mxTreeView->unselect_all();
         for (const auto& rEntry : aNewSelection)
             mxTreeView->select(*rEntry);
 
commit 7c8b41bc322720dc9434fbef1f10a6740913165e
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Jan 13 16:57:48 2022 +0000
Commit:     Michael Stahl <[email protected]>
CommitDate: Mon Jan 31 14:30:37 2022 +0100

    ofz#43577 valid reclen must be >= 20
    
    Change-Id: I454bff4acfcd85701a7f094a8bd76898825e9ce2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128388
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>
    (cherry picked from commit 444477a07bcaf59181dbbc719b913566091deadc)
    
    ofz: Use-of-uninitialized-value
    
    Change-Id: I6b768b80d972c5379005efecfb803463ca648b4b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128644
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>
    (cherry picked from commit 7b37a1a5144a3a4c8b0803b7e2da81e9e108bf66)
    
    ofz: Undefined-Shift
    
    Change-Id: Ib935359071ef9e390aa3d6c9713ed48241ad18e6
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129066
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>
    (cherry picked from commit e863b90a0e5fc90c3b824e4b0012f9389b87a3ac)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129183
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/lotuswordpro/source/filter/lwpdrawobj.cxx 
b/lotuswordpro/source/filter/lwpdrawobj.cxx
index 5de7ae30894d..ce3f5249786d 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.cxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.cxx
@@ -1369,14 +1369,21 @@ void LwpDrawBitmap::Read()
     m_pStream->ReadUInt16( m_aBmpRec.nTranslation );
     m_pStream->ReadUInt16( m_aBmpRec.nRotation );
 
+    if (m_aObjHeader.nRecLen < 20)
+        throw BadRead();
+
     // 20 == length of draw-specific fields.
     // 14 == length of bmp file header.
     m_aBmpRec.nFileSize = m_aObjHeader.nRecLen - 20 + 14;
-    m_pImageData.reset( new sal_uInt8 [m_aBmpRec.nFileSize] );
 
     BmpInfoHeader2 aInfoHeader2;
     m_pStream->ReadUInt32( aInfoHeader2.nHeaderLen );
 
+    if (!m_pStream->good())
+        throw BadRead();
+
+    m_pImageData.reset( new sal_uInt8 [m_aBmpRec.nFileSize] );
+
     sal_uInt32 N;
     sal_uInt32 rgbTableSize;
 
@@ -1391,7 +1398,7 @@ void LwpDrawBitmap::Read()
             throw BadRead();
 
         N = aInfoHeader2.nPlanes * aInfoHeader2.nBitCount;
-        if (N == 24)
+        if (N >= 16)
         {
             rgbTableSize = 0;
         }
@@ -1411,7 +1418,7 @@ void LwpDrawBitmap::Read()
             throw BadRead();
 
         N = aInfoHeader2.nPlanes * aInfoHeader2.nBitCount;
-        if (N == 24)
+        if (N >= 16)
         {
             rgbTableSize = 0;
         }
commit 2cdf4b6580135b6586a3f4a10132e748eb68049b
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Jan 28 19:40:40 2022 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Mon Jan 31 12:23:09 2022 +0100

    upgrade expat to 2.4.4
    
    Change-Id: I1f2694abd9f577e0b4fedbf27118b52be8a1a688
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129180
    Reviewed-by: Michael Stahl <[email protected]>
    Tested-by: Jenkins

diff --git a/download.lst b/download.lst
index 502a0c0cfaef..bb6328ee0a2e 100644
--- a/download.lst
+++ b/download.lst
@@ -50,8 +50,8 @@ export EPUBGEN_TARBALL := libepubgen-0.1.1.tar.xz
 export ETONYEK_SHA256SUM := 
b430435a6e8487888b761dc848b7981626eb814884963ffe25eb26a139301e9a
 export ETONYEK_VERSION_MICRO := 10
 export ETONYEK_TARBALL := libetonyek-0.1.$(ETONYEK_VERSION_MICRO).tar.xz
-export EXPAT_SHA256SUM := 
2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40
-export EXPAT_TARBALL := expat-2.4.1.tar.bz2
+export EXPAT_SHA256SUM := 
5963005ff8720735beb2d2db669afc681adcbcb43dd1eb397d5c2dd7adbc631f
+export EXPAT_TARBALL := expat-2.4.4.tar.gz
 export FIREBIRD_SHA256SUM := 
acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76
 export FIREBIRD_TARBALL := Firebird-3.0.7.33374-0.tar.bz2
 export FONTCONFIG_SHA256SUM := 
19e5b1bc9d013a52063a44e1307629711f0bfef35b9aca16f9c793971e2eb1e5
diff --git a/external/expat/expat-winapi.patch 
b/external/expat/expat-winapi.patch
index bd4da1472fc8..7eae7d5d6139 100644
--- a/external/expat/expat-winapi.patch
+++ b/external/expat/expat-winapi.patch
@@ -13,15 +13,12 @@
  
 --- misc/expat-2.1.0/lib/xmlparse.c    2021-05-23 16:56:25.000000000 +0100
 +++ misc/build/expat-2.1.0/lib/xmlparse.c      2021-05-25 12:42:11.997173600 
+0100
-@@ -92,6 +92,11 @@
+@@ -64,6 +64,8 @@
+ #endif
  
- #include <expat_config.h>
- 
-+#ifdef _WIN32
+ #ifdef _WIN32
 +#  undef HAVE_GETRANDOM
 +#  undef HAVE_SYSCALL_GETRANDOM
-+#endif
-+
- #include "ascii.h"
- #include "expat.h"
- #include "siphash.h"
+ /* force stdlib to define rand_s() */
+ #  if ! defined(_CRT_RAND_S)
+ #    define _CRT_RAND_S
commit 3db1a060a033a2f84bdf798bed3c7e2515a498ce
Author:     Kevin Suo <[email protected]>
AuthorDate: Thu Jan 27 10:28:10 2022 +0800
Commit:     Adolfo Jayme Barrientos <[email protected]>
CommitDate: Sun Jan 30 19:38:01 2022 +0100

    Add CIRCLED NUMBER TWENTY ONE through CIRCLED NUMBER FIFTY to numbring list
    
    Previously we only supported CIRCLED NUMBER ONE through CIRCLED NUMBER 
TWENTY.
    Unicode already has CIRCLED NUMBER TWENTY ONE through CIRCLED NUMBER FIFTY.
    This improves Circled Numbering, especially for CJK.
    E.g. ➀, ➁, ➂, ... ㉑, ㉒, ㉓, ... ㊽, ㊾, ㊿.
    
    Change-Id: I7c4c851f03522fef9d44163da7450cf69aab3889
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129015
    Tested-by: Jenkins
    Reviewed-by: Eike Rathke <[email protected]>
    (cherry picked from commit 7e380a76e1f0faa90fdf8f0575053d4a1ca6e1de)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129069
    Reviewed-by: Adolfo Jayme Barrientos <[email protected]>

diff --git a/i18npool/inc/bullet.h b/i18npool/inc/bullet.h
index 67ea0f7d2600..403d197d2c88 100644
--- a/i18npool/inc/bullet.h
+++ b/i18npool/inc/bullet.h
@@ -239,7 +239,37 @@ const sal_Unicode table_CircledNumber[] = {
     0x2470, // CIRCLED NUMBER SEVENTEEN
     0x2471, // CIRCLED NUMBER EIGHTEEN
     0x2472, // CIRCLED NUMBER NINETEEN
-    0x2473  // CIRCLED NUMBER TWENTY
+    0x2473, // CIRCLED NUMBER TWENTY
+    0x3251, // CIRCLED NUMBER TWENTY ONE
+    0x3252, // CIRCLED NUMBER TWENTY TWO
+    0x3253, // CIRCLED NUMBER TWENTY THREE
+    0x3254, // CIRCLED NUMBER TWENTY FOUR
+    0x3255, // CIRCLED NUMBER TWENTY FIVE
+    0x3256, // CIRCLED NUMBER TWENTY SIX
+    0x3257, // CIRCLED NUMBER TWENTY SEVEN
+    0x3258, // CIRCLED NUMBER TWENTY EIGHT
+    0x3259, // CIRCLED NUMBER TWENTY NINE
+    0x325A, // CIRCLED NUMBER THIRTY
+    0x325B, // CIRCLED NUMBER THIRTY ONE
+    0x325C, // CIRCLED NUMBER THIRTY TWO
+    0x325D, // CIRCLED NUMBER THIRTY THREE
+    0x325E, // CIRCLED NUMBER THIRTY FOUR
+    0x325F, // CIRCLED NUMBER THIRTY FIVE
+    0x32B1, // CIRCLED NUMBER THIRTY SIX
+    0x32B2, // CIRCLED NUMBER THIRTY SEVEN
+    0x32B3, // CIRCLED NUMBER THIRTY EIGHT
+    0x32B4, // CIRCLED NUMBER THIRTY NINE
+    0x32B5, // CIRCLED NUMBER FORTY
+    0x32B6, // CIRCLED NUMBER FORTY ONE
+    0x32B7, // CIRCLED NUMBER FORTY TWO
+    0x32B8, // CIRCLED NUMBER FORTY THREE
+    0x32B9, // CIRCLED NUMBER FORTY FOUR
+    0x32BA, // CIRCLED NUMBER FORTY FIVE
+    0x32BB, // CIRCLED NUMBER FORTY SIX
+    0x32BC, // CIRCLED NUMBER FORTY SEVEN
+    0x32BD, // CIRCLED NUMBER FORTY EIGHT
+    0x32BE, // CIRCLED NUMBER FORTY NINE
+    0x32BF // CIRCLED NUMBER FIFTY
 };
 
 const sal_Unicode table_HangulJamo_ko[] = {
commit af8709defeb90464c8724d3fe5fb8cbbf6efc2b8
Author:     Caolán McNamara <[email protected]>
AuthorDate: Wed Jan 26 11:57:13 2022 +0000
Commit:     Xisco Fauli <[email protected]>
CommitDate: Thu Jan 27 11:50:05 2022 +0100

    ofz#44080 throw exception on a negative length
    
    Change-Id: I3e2286cea69908fae3a2dd177d10fca2b7f0c877
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128956
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <[email protected]>

diff --git a/lotuswordpro/source/filter/lwpdrawobj.cxx 
b/lotuswordpro/source/filter/lwpdrawobj.cxx
index a697b6b0de48..5de7ae30894d 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.cxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.cxx
@@ -1093,6 +1093,9 @@ XFFrame* LwpDrawTextBox::CreateDrawObj(const OUString& 
rStyleName )
         aEncoding = LwpCharSetMgr::GetTextCharEncoding();
     }
 
+    if (TextLength < 2)
+        throw BadRead();
+
     XFParagraph* pXFPara = new XFParagraph();
     pXFPara->Add(OUString(reinterpret_cast<char*>(m_aTextRec.pTextString), 
(TextLength-2), aEncoding));
     pXFPara->SetStyleName(rStyleName);
commit d2c6ee14cd2860e270cec40783778c96680d7594
Author:     Christian Lohmaier <[email protected]>
AuthorDate: Wed Jan 26 14:51:13 2022 +0100
Commit:     Christian Lohmaier <[email protected]>
CommitDate: Wed Jan 26 14:52:57 2022 +0100

    update credits
    
    Change-Id: Ib2d0e2477b932669ab55b36abcfc347d43dc8bcd
    (cherry picked from commit 65564103f619aa75eb1d1872546af78caf3144b6)

diff --git a/readlicense_oo/license/CREDITS.fodt 
b/readlicense_oo/license/CREDITS.fodt
index f78992595ba9..defaf1519d8b 100644
--- a/readlicense_oo/license/CREDITS.fodt
+++ b/readlicense_oo/license/CREDITS.fodt
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
 <office:document xmlns:officeooo="http://openoffice.org/2009/office"; 
xmlns:css3t="http://www.w3.org/TR/css3-text/"; 
xmlns:grddl="http://www.w3.org/2003/g/data-view#"; 
xmlns:xhtml="http://www.w3.org/1999/xhtml"; 
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" 
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:oooc="http://openoffice.org/2004/calc"; 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:ooow="http://openoffice.org/2004/writer"; 
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" 
xmlns:dc="http://purl.org/dc/elements/1.1/"; 
xmlns:rpt="http://openoffice.org/2005/report"; 
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns
 :config:1.0" xmlns:xlink="http://www.w3.org/1999/xlink"; 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:ooo="http://openoffice.org/2004/office"; 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" 
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" 
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
 xmlns:tableooo="http://openoffice.org/2009/table"; 
xmlns:drawooo="http://openoffice.org/2010/draw"; 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
 xmlns:dom="http://www.w3.org/2001/xml-events"; 
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" 
xmlns:math="http://www.w3.org/1998/Math/MathML"; 
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="ur
 n:oasis:names:tc:opendocument:xmlns:script:1.0" 
xmlns:xforms="http://www.w3.org/2002/xforms"; office:version="1.3" 
office:mimetype="application/vnd.oasis.opendocument.text">
- <office:meta><dc:title>Credits » 
LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits
 for the LibreOffice 
development/coding.</dc:description><meta:generator>LibreOffice/7.2.4.1$Linux_X86_64
 
LibreOffice_project/27d75539669ac387bb498e35313b970b7fe9c4f9</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic
 meta:table-count="5" meta:image-count="1" meta:object-count="0" 
meta:page-count="2" meta:paragraph-count="4478" meta:word-count="16560" 
meta:character-count="119483" 
meta:non-whitespace-character-count="104713"/><meta:user-defined 
meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
+ <office:meta><dc:title>Credits » 
LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits
 for the LibreOffice 
development/coding.</dc:description><meta:generator>LibreOffice/7.2.5.2$Linux_X86_64
 
LibreOffice_project/499f9727c189e6ef3471021d6132d4c694f357e5</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic
 meta:table-count="5" meta:image-count="1" meta:object-count="0" 
meta:page-count="2" meta:paragraph-count="4490" meta:word-count="16608" 
meta:character-count="119832" 
meta:non-whitespace-character-count="105021"/><meta:user-defined 
meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
  <office:settings>
   <config:config-item-set config:name="ooo:view-settings">
-   <config:config-item config:name="ViewAreaTop" 
config:type="long">543</config:config-item>
+   <config:config-item config:name="ViewAreaTop" 
config:type="long">1155</config:config-item>
    <config:config-item config:name="ViewAreaLeft" 
config:type="long">501</config:config-item>
-   <config:config-item config:name="ViewAreaWidth" 
config:type="long">55167</config:config-item>
-   <config:config-item config:name="ViewAreaHeight" 
config:type="long">31302</config:config-item>
+   <config:config-item config:name="ViewAreaWidth" 
config:type="long">21354</config:config-item>
+   <config:config-item config:name="ViewAreaHeight" 
config:type="long">32334</config:config-item>
    <config:config-item config:name="ShowRedlineChanges" 
config:type="boolean">true</config:config-item>
    <config:config-item config:name="InBrowseMode" 
config:type="boolean">true</config:config-item>
    <config:config-item-map-indexed config:name="Views">
@@ -16,9 +16,9 @@
      <config:config-item config:name="ViewLeft" 
config:type="long">3649</config:config-item>
      <config:config-item config:name="ViewTop" 
config:type="long">3434</config:config-item>
      <config:config-item config:name="VisibleLeft" 
config:type="long">501</config:config-item>
-     <config:config-item config:name="VisibleTop" 
config:type="long">543</config:config-item>
-     <config:config-item config:name="VisibleRight" 
config:type="long">55667</config:config-item>
-     <config:config-item config:name="VisibleBottom" 
config:type="long">31843</config:config-item>
+     <config:config-item config:name="VisibleTop" 
config:type="long">1155</config:config-item>
+     <config:config-item config:name="VisibleRight" 
config:type="long">21853</config:config-item>
+     <config:config-item config:name="VisibleBottom" 
config:type="long">33487</config:config-item>
      <config:config-item config:name="ZoomType" 
config:type="short">0</config:config-item>
      <config:config-item config:name="ViewLayoutColumns" 
config:type="short">0</config:config-item>
      <config:config-item config:name="ViewLayoutBookMode" 
config:type="boolean">false</config:config-item>
@@ -97,7 +97,7 @@
    </config:config-item-map-indexed>
    <config:config-item config:name="PrinterSetup" config:type="base64Binary"/>
    <config:config-item config:name="AddParaTableSpacingAtStart" 
config:type="boolean">true</config:config-item>
-   <config:config-item config:name="Rsid" 
config:type="int">10417964</config:config-item>
+   <config:config-item config:name="Rsid" 
config:type="int">10472559</config:config-item>
    <config:config-item config:name="EmbeddedDatabaseName" 
config:type="string"/>
    <config:config-item config:name="FieldAutoUpdate" 
config:type="boolean">true</config:config-item>
    <config:config-item config:name="OutlineLevelYieldsNumbering" 
config:type="boolean">false</config:config-item>
@@ -165,7 +165,7 @@
  <office:styles>
   <style:default-style style:family="graphic">
    <style:graphic-properties svg:stroke-color="#3465a4" 
draw:fill-color="#729fcf" fo:wrap-option="no-wrap" draw:shadow-offset-x="0.3cm" 
draw:shadow-offset-y="0.3cm" draw:start-line-spacing-horizontal="0.283cm" 
draw:start-line-spacing-vertical="0.283cm" 
draw:end-line-spacing-horizontal="0.283cm" 
draw:end-line-spacing-vertical="0.283cm" style:flow-with-text="true"/>
-   <style:paragraph-properties style:text-autospace="ideograph-alpha" 
style:line-break="strict" style:font-independent-line-spacing="false">
+   <style:paragraph-properties style:text-autospace="ideograph-alpha" 
style:line-break="strict" style:writing-mode="lr-tb" 
style:font-independent-line-spacing="false">
     <style:tab-stops/>
    </style:paragraph-properties>
    <style:text-properties style:use-window-font-color="true" 
loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" 
fo:language="hu" fo:country="HU" style:letter-kerning="true" 
style:font-name-asian="SimSun" style:font-size-asian="12pt" 
style:language-asian="zh" style:country-asian="CN" 
style:font-name-complex="Mangal" style:font-size-complex="12pt" 
style:language-complex="hi" style:country-complex="IN"/>
@@ -343,23 +343,23 @@
  </office:styles>
  <office:automatic-styles>
   <style:style style:name="Tabelle1" style:family="table">
-   <style:table-properties style:width="25.91cm" table:align="left"/>
+   <style:table-properties style:width="20.93cm" table:align="left"/>
   </style:style>
   <style:style style:name="Tabelle1.A" style:family="table-column">
-   <style:table-column-properties style:column-width="6.775cm"/>
+   <style:table-column-properties style:column-width="5.138cm"/>
   </style:style>
   <style:style style:name="Tabelle1.B" style:family="table-column">
-   <style:table-column-properties style:column-width="6.828cm"/>
+   <style:table-column-properties style:column-width="4.807cm"/>
   </style:style>
   <style:style style:name="Tabelle1.C" style:family="table-column">
-   <style:table-column-properties style:column-width="5.479cm"/>
+   <style:table-column-properties style:column-width="5.498cm"/>
+  </style:style>
+  <style:style style:name="Tabelle1.D" style:family="table-column">
+   <style:table-column-properties style:column-width="5.487cm"/>
   </style:style>
   <style:style style:name="Tabelle1.A1" style:family="table-cell">
    <style:table-cell-properties style:vertical-align="middle" 
fo:padding="0.049cm" fo:border="none"/>
   </style:style>
-  <style:style style:name="Tabelle1.B397" style:family="table-cell">
-   <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
-  </style:style>
   <style:style style:name="Tabelle2" style:family="table">
    <style:table-properties style:width="18.157cm" table:align="left"/>
   </style:style>
@@ -418,23 +418,26 @@
    <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
   </style:style>
   <style:style style:name="Tabelle5" style:family="table">
-   <style:table-properties style:width="32.762cm" table:align="left"/>
+   <style:table-properties style:width="20.93cm" table:align="left"/>
   </style:style>
   <style:style style:name="Tabelle5.A" style:family="table-column">
-   <style:table-column-properties style:column-width="8.098cm"/>
+   <style:table-column-properties style:column-width="4.606cm"/>
   </style:style>
   <style:style style:name="Tabelle5.B" style:family="table-column">
-   <style:table-column-properties style:column-width="11.829cm"/>
+   <style:table-column-properties style:column-width="7.142cm"/>
   </style:style>
   <style:style style:name="Tabelle5.C" style:family="table-column">
-   <style:table-column-properties style:column-width="6.272cm"/>
+   <style:table-column-properties style:column-width="4.801cm"/>
   </style:style>
   <style:style style:name="Tabelle5.D" style:family="table-column">
-   <style:table-column-properties style:column-width="6.563cm"/>
+   <style:table-column-properties style:column-width="4.382cm"/>
   </style:style>
   <style:style style:name="Tabelle5.A1" style:family="table-cell">
    <style:table-cell-properties style:vertical-align="middle" 
fo:padding="0.049cm" fo:border="none"/>
   </style:style>
+  <style:style style:name="Tabelle5.B680" style:family="table-cell">
+   <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
+  </style:style>
   <style:style style:name="P1" style:family="paragraph" 
style:parent-style-name="Table_20_Contents">
    <style:text-properties fo:font-size="2pt" style:font-size-asian="2pt" 
style:font-size-complex="2pt"/>
   </style:style>
@@ -493,34 +496,33 @@
   <style:style style:name="P17" style:family="paragraph" 
style:parent-style-name="Table_20_Contents">
    <style:text-properties fo:font-size="2pt" style:font-size-asian="2pt" 
style:font-size-complex="2pt"/>
   </style:style>
-  <style:style style:name="P18" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L1"/>
-  <style:style style:name="P19" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L1">
+  <style:style style:name="P18" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L1">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P20" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L2">
+  <style:style style:name="P19" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L2">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P21" style:family="paragraph" 
style:parent-style-name="Text_20_body">
+  <style:style style:name="P20" style:family="paragraph" 
style:parent-style-name="Text_20_body">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P22" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L3"/>
-  <style:style style:name="P23" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L3">
+  <style:style style:name="P21" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L3"/>
+  <style:style style:name="P22" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L3">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P24" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L4"/>
-  <style:style style:name="P25" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L4">
+  <style:style style:name="P23" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L4"/>
+  <style:style style:name="P24" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L4">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P26" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L5"/>
-  <style:style style:name="P27" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L5">
+  <style:style style:name="P25" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L5"/>
+  <style:style style:name="P26" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L5">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P28" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L6"/>
-  <style:style style:name="P29" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L6">
+  <style:style style:name="P27" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L6"/>
+  <style:style style:name="P28" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L6">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
-  <style:style style:name="P30" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L7"/>
-  <style:style style:name="P31" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L7">
+  <style:style style:name="P29" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L7"/>
+  <style:style style:name="P30" style:family="paragraph" 
style:parent-style-name="Text_20_body" style:list-style-name="L7">
    <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" 
style:contextual-spacing="false"/>
   </style:style>
   <style:style style:name="T1" style:family="text">
@@ -1074,7 +1076,7 @@
    </draw:frame>
    <text:section text:style-name="Sect1" text:name="BgContainer">
     <text:p text:style-name="P16">Credits</text:p>
-    <text:p text:style-name="Text_20_body">1715 individuals contributed to 
OpenOffice.org (and whose contributions were imported into LibreOffice) or 
LibreOffice until 2021-12-27 20:52:04.</text:p>
+    <text:p text:style-name="Text_20_body">1722 individuals contributed to 
OpenOffice.org (and whose contributions were imported into LibreOffice) or 
LibreOffice until 2022-01-26 14:15:58.</text:p>
     <text:p text:style-name="Text_20_body"><text:span 
text:style-name="T1">*</text:span> marks developers whose first contributions 
happened after 2010-09-28.</text:p>
     <text:h text:style-name="Heading_20_2" text:outline-level="2">Developers 
committing code since 2010-09-28</text:h>
     <table:table table:name="Tabelle1" table:style-name="Tabelle1">
@@ -1082,12 +1084,12 @@
      <table:table-column table:style-name="Tabelle1.B"/>
      <table:table-column table:style-name="Tabelle1.C"/>
      <table:table-column table:style-name="Tabelle1.D"/>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Ruediger 
Timm<text:line-break/>Commits: 82464<text:line-break/>Joined: 
2000-10-10</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Caolán 
McNamara<text:line-break/>Commits: 32225<text:line-break/>Joined: 
2000-10-10</text:p>
+       <text:p text:style-name="Table_20_Contents">Caolán 
McNamara<text:line-break/>Commits: 32348<text:line-break/>Joined: 
2000-10-10</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Kurt 
Zenker<text:line-break/>Commits: 31752<text:line-break/>Joined: 
2000-09-25</text:p>
@@ -1096,7 +1098,7 @@
        <text:p text:style-name="Table_20_Contents">Oliver 
Bolte<text:line-break/>Commits: 31008<text:line-break/>Joined: 
2000-09-19</text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Jens-Heiner Rechtien 
[hr]<text:line-break/>Commits: 28805<text:line-break/>Joined: 
2000-09-18</text:p>
       </table:table-cell>
@@ -1104,27 +1106,27 @@
        <text:p text:style-name="Table_20_Contents">Vladimir 
Glazunov<text:line-break/>Commits: 25434<text:line-break/>Joined: 
2000-12-04</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Stephan 
Bergmann<text:line-break/>Commits: 19446<text:line-break/>Joined: 
2000-10-04</text:p>
+       <text:p text:style-name="Table_20_Contents">Stephan 
Bergmann<text:line-break/>Commits: 19480<text:line-break/>Joined: 
2000-10-04</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 
15438<text:line-break/>Joined: <text:span 
text:style-name="T2">2011-12-12</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 
15641<text:line-break/>Joined: <text:span 
text:style-name="T2">2011-12-12</text:span></text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Ivo 
Hinkelmann<text:line-break/>Commits: 9480<text:line-break/>Joined: 
2002-09-09</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Tor 
Lillqvist<text:line-break/>Commits: 9042<text:line-break/>Joined: 
2010-03-23</text:p>
+       <text:p text:style-name="Table_20_Contents">Tor 
Lillqvist<text:line-break/>Commits: 9049<text:line-break/>Joined: 
2010-03-23</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Miklos 
Vajna<text:line-break/>Commits: 8727<text:line-break/>Joined: 
2010-07-29</text:p>
+       <text:p text:style-name="Table_20_Contents">Miklos 
Vajna<text:line-break/>Commits: 8765<text:line-break/>Joined: 
2010-07-29</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Michael 
Stahl<text:line-break/>Commits: 7856<text:line-break/>Joined: 
2008-06-16</text:p>
+       <text:p text:style-name="Table_20_Contents">Michael 
Stahl<text:line-break/>Commits: 7869<text:line-break/>Joined: 
2008-06-16</text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Kohei 
Yoshida<text:line-break/>Commits: 5571<text:line-break/>Joined: 
2009-06-19</text:p>
       </table:table-cell>
@@ -1132,41 +1134,41 @@
        <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Markus Mohrhard<text:line-break/>Commits: 
5203<text:line-break/>Joined: <text:span 
text:style-name="T2">2011-03-17</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Eike 
Rathke<text:line-break/>Commits: 5031<text:line-break/>Joined: 
2000-10-11</text:p>
+       <text:p text:style-name="Table_20_Contents">Eike 
Rathke<text:line-break/>Commits: 5042<text:line-break/>Joined: 
2000-10-11</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Frank Schoenheit 
[fs]<text:line-break/>Commits: 5008<text:line-break/>Joined: 2000-09-19</text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">David 
Tardon<text:line-break/>Commits: 3648<text:line-break/>Joined: 
2009-11-12</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 
3339<text:line-break/>Joined: <text:span 
text:style-name="T2">2010-11-04</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 
3373<text:line-break/>Joined: <text:span 
text:style-name="T2">2010-11-04</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Hans-Joachim 
Lankenau<text:line-break/>Commits: 3007<text:line-break/>Joined: 
2000-09-19</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 
2958<text:line-break/>Joined: <text:span 
text:style-name="T2">2014-10-30</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 
2993<text:line-break/>Joined: <text:span 
text:style-name="T2">2014-10-30</text:span></text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 
2906<text:line-break/>Joined: <text:span 
text:style-name="T2">2012-06-02</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 
2947<text:line-break/>Joined: <text:span 
text:style-name="T2">2012-06-02</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Ocke Janssen 
[oj]<text:line-break/>Commits: 2850<text:line-break/>Joined: 2000-09-20</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Luboš 
Luňák<text:line-break/>Commits: 2754<text:line-break/>Joined: 
2010-09-21</text:p>
+       <text:p text:style-name="Table_20_Contents">Luboš 
Luňák<text:line-break/>Commits: 2770<text:line-break/>Joined: 
2010-09-21</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Jan 
Holesovsky<text:line-break/>Commits: 2667<text:line-break/>Joined: 
2009-06-23</text:p>
+       <text:p text:style-name="Table_20_Contents">Jan 
Holesovsky<text:line-break/>Commits: 2668<text:line-break/>Joined: 
2009-06-23</text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Mathias 
Bauer<text:line-break/>Commits: 2580<text:line-break/>Joined: 
2000-09-20</text:p>
       </table:table-cell>
@@ -1174,13 +1176,13 @@
        <text:p text:style-name="Table_20_Contents">Oliver 
Specht<text:line-break/>Commits: 2549<text:line-break/>Joined: 
2000-09-21</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Michael 
Meeks<text:line-break/>Commits: 2464<text:line-break/>Joined: 
2004-08-05</text:p>
+       <text:p text:style-name="Table_20_Contents">Michael 
Meeks<text:line-break/>Commits: 2469<text:line-break/>Joined: 
2004-08-05</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Bjoern 
Michaelsen<text:line-break/>Commits: 2454<text:line-break/>Joined: 
2009-10-14</text:p>
       </table:table-cell>
      </table:table-row>
-     <table:table-row table:style-name="TableLine94282141847424">
+     <table:table-row table:style-name="TableLine102518304">
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Norbert Thiebaud<text:line-break/>Commits: 
2176<text:line-break/>Joined: <text:span 
text:style-name="T2">2010-09-29</text:span></text:p>
       </table:table-cell>
@@ -1188,15 +1190,15 @@
        <text:p text:style-name="Table_20_Contents"><text:span 
text:style-name="T1">*</text:span>Thomas Arnhold<text:line-break/>Commits: 
2176<text:line-break/>Joined: <text:span 
text:style-name="T2">2011-01-16</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" 
office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Philipp Lohmann 
[pl]<text:line-break/>Commits: 2089<text:line-break/>Joined: 2000-09-21</text:p>

... etc. - the rest is truncated

Reply via email to