core.git: include/comphelper

2023-12-23 Thread Caolán McNamara (via logerrit)
 include/comphelper/interfacecontainer3.hxx |7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

New commits:
commit 28616cf0989dab2ca2a1710c64f6fb1c1d78c584
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 20:43:27 2023 +
Commit: Caolán McNamara 
CommitDate: Sun Dec 24 00:50:18 2023 +0100

OInterfaceIteratorHelper3 always copies maData contents in ctor

while I think the idea is that the copy on write should only
be done by OInterfaceContainerHelper3, i.e. that ownership
really transfers to OInterfaceIteratorHelper3 and OInterfaceContainerHelper3
makes a new one if that turns out to be necessary

Change-Id: I6e97e3b303f133edbbb35ac23f39cf5348ad49fe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161257
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/include/comphelper/interfacecontainer3.hxx 
b/include/comphelper/interfacecontainer3.hxx
index 4b3d44bab69d..02f96658dcd2 100644
--- a/include/comphelper/interfacecontainer3.hxx
+++ b/include/comphelper/interfacecontainer3.hxx
@@ -63,7 +63,8 @@ public:
 OInterfaceIteratorHelper3(OInterfaceContainerHelper3& rCont_)
 : rCont(rCont_)
 , maData(rCont.maData)
-, nRemain(maData->size())
+// const_cast so we don't trigger make_unique via 
o3tl::cow_wrapper::operator->
+, nRemain(std::as_const(maData)->size())
 {
 }
 
@@ -96,12 +97,12 @@ template 
 const css::uno::Reference& 
OInterfaceIteratorHelper3::next()
 {
 nRemain--;
-return (*maData)[nRemain];
+return (*std::as_const(maData))[nRemain];
 }
 
 template  void OInterfaceIteratorHelper3::remove()
 {
-rCont.removeInterface((*maData)[nRemain]);
+rCont.removeInterface((*std::as_const(maData))[nRemain]);
 }
 
 /**


core.git: external/zxcvbn-c

2023-12-23 Thread Thorsten Behrens (via logerrit)
 external/zxcvbn-c/ExternalProject_zxcvbn-c.mk |2 ++
 external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk   |2 ++
 2 files changed, 4 insertions(+)

New commits:
commit cfd333f13f85eaf6eaf564e791b55a2092841376
Author: Thorsten Behrens 
AuthorDate: Sat Dec 23 22:37:26 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sun Dec 24 00:29:50 2023 +0100

zxcvbn-c: disable warnings

Change-Id: I348dc5f92f41fc3e8c1aee8743d5e1cf86fa3bbb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161259
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk 
b/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk
index 51b60a9c2ecb..bd652464ca15 100644
--- a/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk
+++ b/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk
@@ -9,6 +9,8 @@
 
 $(eval $(call gb_ExternalProject_ExternalProject,zxcvbn-c))
 
+$(eval $(call gb_Library_set_warnings_disabled,zxcvbn-c))
+
 $(eval $(call gb_ExternalProject_register_targets,zxcvbn-c,\
generate-dictionary-nodes \
 ))
diff --git a/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk 
b/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk
index 9748ef850c55..ac670ad6ed5b 100644
--- a/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk
+++ b/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,zxcvbn-c))
 
 $(eval $(call gb_StaticLibrary_use_unpacked,zxcvbn-c,zxcvbn-c))
 
+$(eval $(call gb_StaticLibrary_set_warnings_disabled,zxcvbn-c))
+
 # zxcvbn-c static library depends on generation of dictionary nodes resulting 
in dict-src.h
 $(eval $(call gb_StaticLibrary_use_external_project,zxcvbn-c,zxcvbn-c,full))
 


core.git: xmlsecurity/source

2023-12-23 Thread Thorsten Behrens (via logerrit)
 xmlsecurity/source/xmlsec/nss/ciphercontext.cxx |   22 +++---
 1 file changed, 11 insertions(+), 11 deletions(-)

New commits:
commit 4a532e651b9fd4c9b24b017d2e1d099ee76ceed8
Author: Thorsten Behrens 
AuthorDate: Fri Dec 22 22:44:15 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sun Dec 24 00:29:34 2023 +0100

xmlsecurity: fix AES-GCM code differently

With PCH, the earlier workaround with NSS_PKCS11_2_0_COMPAT breaks -
so lets fix this with conditionals, its only two places.

Follow-up commit to 9276d5338ef04209b007bbc705e4c023cf181456

Change-Id: I7d3292304d83d784ee9dce5cdc62b4a028ff333a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161204
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/xmlsecurity/source/xmlsec/nss/ciphercontext.cxx 
b/xmlsecurity/source/xmlsec/nss/ciphercontext.cxx
index b053db901ccd..c3bbfdb0f2ef 100644
--- a/xmlsecurity/source/xmlsec/nss/ciphercontext.cxx
+++ b/xmlsecurity/source/xmlsec/nss/ciphercontext.cxx
@@ -24,12 +24,6 @@
 #include 
 #include 
 
-#if defined(__GNUC__)
-#pragma GCC diagnostic ignored "-Wunused-macros"
-#endif
-// see TODO below
-#define NSS_PKCS11_2_0_COMPAT 1
-
 #include "ciphercontext.hxx"
 #include  // for NSS_VMINOR
 #include 
@@ -63,12 +57,14 @@ uno::Reference< xml::crypto::XCipherContext > 
OCipherContext::Create( CK_MECHANI
 
 if (nNSSCipherID == CKM_AES_GCM)
 {
-// TODO: when runtime requirements are raised to NSS 3.52, replace this
-// according to https://fedoraproject.org/wiki/Changes/NssGCMParams
+// TODO: when runtime requirements are raised to NSS 3.52,
+// cleanup according to
+// https://fedoraproject.org/wiki/Changes/NssGCMParams
 #if NSS_VMINOR >= 52
-static_assert(sizeof(CK_GCM_PARAMS) == sizeof(CK_NSS_GCM_PARAMS));
+xResult->m_pSecParam = SECITEM_AllocItem(nullptr, nullptr, 
sizeof(CK_NSS_GCM_PARAMS));
+#else
+xResult->m_pSecParam = SECITEM_AllocItem(nullptr, nullptr, 
sizeof(CK_GCM_PARAMS));
 #endif
-xResult->m_pSecParam = SECITEM_AllocItem(nullptr, nullptr, 
sizeof(/*CK_NSS_GCM_PARAMS*/CK_GCM_PARAMS));
 if (!xResult->m_pSecParam)
 {
 SAL_WARN("xmlsecurity.nss", "SECITEM_AllocItem failed");
@@ -76,7 +72,11 @@ uno::Reference< xml::crypto::XCipherContext > 
OCipherContext::Create( CK_MECHANI
 }
 assert(aInitializationVector.getLength() == nAESGCMIVSize);
 xResult->m_AESGCMIV = aInitializationVector;
-auto *const pParams = 
reinterpret_cast(xResult->m_pSecParam->data);
+#if NSS_VMINOR >= 52
+auto *const pParams = 
reinterpret_cast(xResult->m_pSecParam->data);
+#else
+auto *const pParams = 
reinterpret_cast(xResult->m_pSecParam->data);
+#endif
 pParams->pIv = const_cast(reinterpret_cast(xResult->m_AESGCMIV.getConstArray()));
 pParams->ulIvLen = 
sal::static_int_cast(xResult->m_AESGCMIV.getLength());
 pParams->pAAD = nullptr;


core.git: bin/get-bugzilla-attachments-by-mimetype

2023-12-23 Thread Thorsten Behrens (via logerrit)
 bin/get-bugzilla-attachments-by-mimetype |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit dbe05a624ca53db83bedbc049791cc215ee6d46b
Author: Thorsten Behrens 
AuthorDate: Sun Dec 24 00:04:10 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sun Dec 24 00:20:21 2023 +0100

get-bz-attachments: switch to python3

Nothing left to do, just switch the interpreter.

Change-Id: I6a0ff0a019a66f6baf39794c853655f273676ea2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161261
Tested-by: Thorsten Behrens 
Reviewed-by: Thorsten Behrens 

diff --git a/bin/get-bugzilla-attachments-by-mimetype 
b/bin/get-bugzilla-attachments-by-mimetype
index 924a522ebff7..c9942189be58 100755
--- a/bin/get-bugzilla-attachments-by-mimetype
+++ b/bin/get-bugzilla-attachments-by-mimetype
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 # This file is part of the LibreOffice project.


core.git: bin/get-bugzilla-attachments-by-mimetype

2023-12-23 Thread Thorsten Behrens (via logerrit)
 bin/get-bugzilla-attachments-by-mimetype |8 
 1 file changed, 8 insertions(+)

New commits:
commit 750f53a73fe6b817edc76329488d4b508d57c19b
Author: Thorsten Behrens 
AuthorDate: Tue Dec 19 19:54:55 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sun Dec 24 00:19:56 2023 +0100

get-bz-attachments: set speaking thread names for job queue

Change-Id: I38d637b8dd0f19330329565bf2e63c3c8463536c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161004
Tested-by: Thorsten Behrens 
Reviewed-by: Thorsten Behrens 

diff --git a/bin/get-bugzilla-attachments-by-mimetype 
b/bin/get-bugzilla-attachments-by-mimetype
index 9df55914360e..924a522ebff7 100755
--- a/bin/get-bugzilla-attachments-by-mimetype
+++ b/bin/get-bugzilla-attachments-by-mimetype
@@ -422,6 +422,14 @@ class manage_threads(threading.Thread):
 # Use job parameters to call our query
 # Then let the queue know we are done with this job
 (uri, mimetype, prefix, extension) = jobs.get(True, 6)
+try:
+# set thread name for easier debugging, if process
+# ctl package is available
+import prctl
+prctl.set_name(prefix[:3] + ': ' + mimetype[-10:])
+except ImportError:
+pass
+
 try:
 get_through_rss_query(uri, mimetype, prefix, extension)
 finally:


core.git: bin/get-bugzilla-attachments-by-mimetype

2023-12-23 Thread Thorsten Behrens (via logerrit)
 bin/get-bugzilla-attachments-by-mimetype |  278 +--
 1 file changed, 161 insertions(+), 117 deletions(-)

New commits:
commit 17f79d80484c5d5b492efd46e2e52481a17e0095
Author: Thorsten Behrens 
AuthorDate: Tue Dec 19 19:42:00 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sun Dec 24 00:19:27 2023 +0100

get-bz-attachments: some flake8 cleanup

- fix the most obvious stylistic problems
- add some brief doc strings
- remove one instance of dead code, left over from this change:
  commit bd2eee0bd4ae83ff453522b7cf09b69f1b8b5e1b
  Date:   Wed Jun 3 23:41:32 2015 +0200

get-bugzilla-attachments: avoid FDO-TDF duplicates...

Change-Id: I88672ae99bc42e9af09ea6033f87240463b2c038
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161003
Tested-by: Thorsten Behrens 
Reviewed-by: Thorsten Behrens 

diff --git a/bin/get-bugzilla-attachments-by-mimetype 
b/bin/get-bugzilla-attachments-by-mimetype
index c9a0d41cf5cc..9df55914360e 100755
--- a/bin/get-bugzilla-attachments-by-mimetype
+++ b/bin/get-bugzilla-attachments-by-mimetype
@@ -23,53 +23,61 @@
 # it is already downloaded by a previous run, and up-to-date.
 
 from __future__ import print_function
-import feedparser
+
 import base64
 import datetime
 import glob
+import os
+import os.path
 import re
-import os, os.path
 import stat
 import sys
 import threading
 try:
 import queue
-except:
+except Exception:
 import Queue as queue
 try:
 from urllib.request import urlopen
-except:
+except Exception:
 from urllib import urlopen
 try:
 import xmlrpc.client as xmlrpclib
-except:
+except Exception:
 import xmlrpclib
 from xml.dom import minidom
 from xml.sax.saxutils import escape
+
 from attachment_mimetypes import mimetypes
 
+import feedparser
+
+
 def urlopen_retry(url):
+"""Open url, retry 3 times."""
 maxretries = 3
 for i in range(maxretries + 1):
 try:
 return urlopen(url)
 except IOError as e:
-print("caught IOError: " + str(e))
+print('caught IOError: ' + str(e))
 if maxretries == i:
 raise
-print("retrying...")
+print('retrying...')
+
 
 def get_from_bug_url_via_xml(url, mimetype, prefix, suffix):
-id = url.rsplit('=', 2)[1]
-print("id is " + prefix + id + " " + suffix)
-print("parsing " + id)
-sock = urlopen_retry(url+"&ctype=xml")
+"""Parse bug xml, download attachments with matching suffix."""
+bugid = url.rsplit('=', 2)[1]
+print('id is ' + prefix + bugid + ' ' + suffix)
+print('parsing ' + bugid)
+sock = urlopen_retry(url+'&ctype=xml')
 dom = minidom.parse(sock)
 sock.close()
-attachmentid=0
+attachmentid = 0
 for attachment in dom.getElementsByTagName('attachment'):
 attachmentid += 1
-print(" mimetype is", end=' ')
+print(' mimetype is', end=' ')
 for node in attachment.childNodes:
 if node.nodeName == 'type':
 # check if attachment is deleted
@@ -87,53 +95,58 @@ def get_from_bug_url_via_xml(url, mimetype, prefix, suffix):
 print('deleted attachment, skipping')
 continue
 
-download = suffix + '/' +prefix + id + '-' + str(attachmentid) 
+ '.' + suffix
+download = (suffix + '/' + prefix + bugid + '-' +
+str(attachmentid) + '.' + suffix)
 if os.path.isfile(download):
-print("assuming " + download + " is up to date")
+print('assuming ' + download + ' is up to date')
 continue
 
 # prevent re-downloading FDO attachments from TDF
-if prefix == "tdf" and int(id) < 88776:
-fdodownload = download.replace("tdf", "fdo")
+if prefix == 'tdf' and int(bugid) < 88776:
+fdodownload = download.replace('tdf', 'fdo')
 if os.path.isfile(fdodownload):
-print("assuming FDO " + fdodownload + " is up to date")
+print('assuming FDO ' + fdodownload + ' is up to date')
 continue
 
 print('downloading as ' + download)
-tmpfile = download + ".tmp"
+tmpfile = download + '.tmp'
 f = open(tmpfile, 'wb')
 f.write(base64.b64decode(node.firstChild.nodeValue))
 f.close()
 os.rename(tmpfile, download)
 break
 
+
 def get_novell_bug_via_xml(url, mimetype, prefix, suffix):
-id = url.rsplit('=', 2)[1]
-print("id is " + prefix + id + " " + suffix)
-print("parsing " + id)
-sock = urlopen_retry(url+"&ctype=xml")
+"""Parse bug xml, download attachments with matching suffix."""
+bugid = url.rsplit('=', 2)[1]
+print('id is ' + prefix + bugid + ' '

core.git: include/oox svx/source

2023-12-23 Thread Caolán McNamara (via logerrit)
 include/oox/helper/refmap.hxx  |   12 ++--
 svx/source/form/formcontroller.cxx |7 +++
 2 files changed, 9 insertions(+), 10 deletions(-)

New commits:
commit 3c6942a8c64ab35cae7c14b3f64059da4d6ca19b
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 18:55:09 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 20:54:05 2023 +0100

cid#1545525 COPY_INSTEAD_OF_MOVE

and

cid#1545519 COPY_INSTEAD_OF_MOVE
cid#1545516 COPY_INSTEAD_OF_MOVE
cid#1545501 COPY_INSTEAD_OF_MOVE

Change-Id: Icc6efaf8c8fe06c7acd629ef77eac6b228b98f4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161255
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/include/oox/helper/refmap.hxx b/include/oox/helper/refmap.hxx
index db7cbffe2e02..4e5efe6c233c 100644
--- a/include/oox/helper/refmap.hxx
+++ b/include/oox/helper/refmap.hxx
@@ -48,17 +48,17 @@ public:
 public:
 /** Returns true, if the object associated to the passed key exists.
 Returns false, if the key exists but points to an empty reference. */
-boolhas( key_type nKey ) const
+boolhas(const key_type& rKey) const
 {
-const mapped_type* pxRef = getRef( nKey );
+const mapped_type* pxRef = getRef(rKey);
 return pxRef && pxRef->get();
 }
 
 /** Returns a reference to the object associated to the passed key, or an
 empty reference on error. */
-mapped_type get( key_type nKey ) const
+mapped_type get(const key_type& rKey) const
 {
-if( const mapped_type* pxRef = getRef( nKey ) ) 
return *pxRef;
+if( const mapped_type* pxRef = getRef(rKey) ) 
return *pxRef;
 return mapped_type();
 }
 
@@ -129,9 +129,9 @@ private:
 void operator()( const value_type& rValue ) { if( 
rValue.second.get() ) maFunctor( rValue.first, *rValue.second ); }
 };
 
-const mapped_type* getRef( key_type nKey ) const
+const mapped_type* getRef(const key_type& rKey) const
 {
-typename container_type::const_iterator aIt = this->find( nKey );
+typename container_type::const_iterator aIt = this->find(rKey);
 return (aIt == this->end()) ? nullptr : &aIt->second;
 }
 };
diff --git a/svx/source/form/formcontroller.cxx 
b/svx/source/form/formcontroller.cxx
index 4198c5c367ae..0fb1bd64c942 100644
--- a/svx/source/form/formcontroller.cxx
+++ b/svx/source/form/formcontroller.cxx
@@ -3081,10 +3081,9 @@ void 
FormController::setFilter(::std::vector& rFieldInfos)
 if (aRow.find(rFieldInfo.xText) != aRow.end())
 {
 OString aVal = 
m_pParser->getContext().getIntlKeywordAscii(IParseContext::InternationalKeyCode::And);
-OUString aCompText = aRow[rFieldInfo.xText] + " "  
+
-OStringToOUString(aVal, 
RTL_TEXTENCODING_ASCII_US) + " " +
-::comphelper::getString(rRefValue.Value);
-aRow[rFieldInfo.xText] = aCompText;
+aRow[rFieldInfo.xText] = aRow[rFieldInfo.xText] + 
" "  +
+
OStringToOUString(aVal, RTL_TEXTENCODING_ASCII_US) + " " +
+
::comphelper::getString(rRefValue.Value);
 }
 else
 {


core.git: configure.ac external/argon2

2023-12-23 Thread Thorsten Behrens (via logerrit)
 configure.ac   |1 
 external/argon2/0002-Add-WinARM64-vcxproj-config.patch |  185 +
 external/argon2/UnpackedTarball_argon2.mk  |1 
 3 files changed, 187 insertions(+)

New commits:
commit 401e9408d14dc2b9d07183a04c223831a59f71a3
Author: Thorsten Behrens 
AuthorDate: Sat Dec 23 01:08:09 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sat Dec 23 20:10:57 2023 +0100

tdf#105844 argon2: add vcxproj files for WinARM64 builds

Also add argon2 to crossbuild tools side.

Change-Id: I8704b2d8362a051c2d634b9db7416cdc2cf9add4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161206
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
Reviewed-by: Thorsten Behrens 

diff --git a/configure.ac b/configure.ac
index 788342733d1c..1c2a9c86cf5e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5883,6 +5883,7 @@ if test "$cross_compiling" = "yes"; then
 
 # filter permitted build targets
 PERMITTED_BUILD_TARGETS="
+ARGON2
 AVMEDIA
 BOOST
 BZIP2
diff --git a/external/argon2/0002-Add-WinARM64-vcxproj-config.patch 
b/external/argon2/0002-Add-WinARM64-vcxproj-config.patch
new file mode 100644
index ..063296dd107c
--- /dev/null
+++ b/external/argon2/0002-Add-WinARM64-vcxproj-config.patch
@@ -0,0 +1,185 @@
+diff -ur argon2.org/vs2015/Argon2OptDll/Argon2OptDll.vcxproj 
argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj
+--- argon2.org/vs2015/Argon2OptDll/Argon2OptDll.vcxproj2023-12-23 
01:00:49.231059537 +0100
 argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj2023-12-23 
01:02:40.375527010 +0100
+@@ -13,6 +13,10 @@
+   ReleaseStatic
+   x64
+ 
++
++  Release
++  AMR64
++
+ 
+   Release
+   Win32
+@@ -50,6 +54,12 @@
+ true
+ MultiByte
+   
++  
++DynamicLibrary
++false
++true
++MultiByte
++  
+   
+ DynamicLibrary
+ false
+@@ -84,6 +94,9 @@
+   
+ 
+   
++  
++
++  
+   
+ 
+   
+@@ -107,6 +120,11 @@
+ $(SolutionDir)vs2015uild\$(ProjectName)\
+ $(SolutionDir)include;$(IncludePath)
+   
++  
++$(SolutionDir)vs2015uild\
++$(SolutionDir)vs2015uild\$(ProjectName)\
++$(SolutionDir)include;$(IncludePath)
++  
+   
+ $(SolutionDir)vs2015uild\
+ $(SolutionDir)vs2015uild\$(ProjectName)\
+@@ -158,6 +176,21 @@
+   true
+ 
+   
++  
++
++  Level3
++  MaxSpeed
++  true
++  false
++  true
++  
_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
++
++
++  true
++  true
++  true
++
++  
+   
+ 
+   Level3
+@@ -209,7 +242,6 @@
+ 
+ 
+ 
+-
+ 
+ 
+@@ -221,7 +253,7 @@
+ 
+ 
+-
++
+ 
+   
+   
+Only in argon2/vs2015/Argon2OptDll: Argon2OptDll.vcxproj~
+diff -ur argon2.org/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj 
argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj
+--- argon2.org/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj  2023-12-23 
01:00:49.231059537 +0100
 argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj  2023-12-23 
01:02:12.518576081 +0100
+@@ -17,6 +17,10 @@
+   Release
+   Win32
+ 
++
++  Release
++  ARM64
++
+ 
+   Debug
+   x64
+@@ -51,6 +55,12 @@
+ true
+ MultiByte
+   
++  
++Application
++false
++true
++MultiByte
++  
+   
+ Application
+ false
+@@ -85,6 +95,9 @@
+   
+ 
+   
++  
++
++  
+   
+ 
+   
+@@ -108,6 +121,11 @@
+ $(SolutionDir)vs2015uild\
+ $(SolutionDir)vs2015uild\$(ProjectName)\
+   
++  
++$(SolutionDir)include;$(IncludePath)
++$(SolutionDir)vs2015uild\
++$(SolutionDir)vs2015uild\$(ProjectName)\
++  
+   
+ $(SolutionDir)include;$(IncludePath)
+ $(SolutionDir)vs2015uild\
+@@ -162,6 +180,21 @@
+   true
+ 
+   
++  
++
++  Level3
++  MaxSpeed
++  true
++  false
++  true
++  
_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
++
++
++  true
++  true
++  true
++
++  
+   
+ 
+   Level3
+@@ -214,7 +247,7 @@
+ 
+ 
+-
++
+ 
+ 
+   
+@@ -222,7 +255,6 @@
+ 
+ 
+ 
+-
+ 
+ 
+@@ -232,4 +264,4 @@
+   
+   
+   
+-
+\ No newline at end of file
++
+Only in argon2/vs2015/Argon2OptTestCI: Argon2OptTestCI.vcxproj~
diff --git a/external/argon2/UnpackedTarball_argon2.mk 
b/external/argon2/UnpackedTarball_argon2.mk
index 0b35c2f58caf..3addfad639d5 100644
--- a/external/argon2/UnpackedTarball_argon2.mk
+++ b/external/argon2/UnpackedTarball_argon2.mk
@@ -15,6 +15,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,argon2,1))
 
 $(eval $(call gb_UnpackedTarball_add_patches,argon2,\

external/argon2/0001-Fix-possible-compiler-error-due-to-undefined-_MSC_VE.patch 
\
+   external/argon2/0002-Add-WinARM64-vcxproj-config.patch \
 ))
 
 # vim: set noet sw=4 ts=4:


core.git: sd/source

2023-12-23 Thread Jim Raykowski (via logerrit)
 sd/source/ui/dlg/LayerTabBar.cxx |   95 ++-
 sd/source/ui/inc/LayerTabBar.hxx |9 +++
 2 files changed, 103 insertions(+), 1 deletion(-)

New commits:
commit d6a94c51130f62b17b29060fab6befe576e8c078
Author: Jim Raykowski 
AuthorDate: Sun Nov 12 17:52:09 2023 -0900
Commit: Jim Raykowski 
CommitDate: Sat Dec 23 20:10:25 2023 +0100

tdf#157244 Enhancement to identify objects in a layer

Show an invert overlay on objects of a layer after a 1/2 second delay
when the mouse pointer is on a layer tab.

Change-Id: Ifcb2d82d73b8745ad9aecddd18b22193525ed756
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159358
Tested-by: Jenkins
Reviewed-by: Jim Raykowski 

diff --git a/sd/source/ui/dlg/LayerTabBar.cxx b/sd/source/ui/dlg/LayerTabBar.cxx
index 96b96068f331..ece1e0884bcf 100644
--- a/sd/source/ui/dlg/LayerTabBar.cxx
+++ b/sd/source/ui/dlg/LayerTabBar.cxx
@@ -39,6 +39,12 @@
 #include 
 #include 
 
+#include 
+#include 
+#include 
+#include 
+#include 
+
 namespace sd {
 
 /**
@@ -47,12 +53,17 @@ namespace sd {
 LayerTabBar::LayerTabBar(DrawViewShell* pViewSh, vcl::Window* pParent)
 : TabBar( pParent, WinBits( WB_BORDER | WB_3DLOOK | WB_SCROLL ) ),
 DropTargetHelper( this ),
-pDrViewSh(pViewSh)
+pDrViewSh(pViewSh),
+m_aBringLayerObjectsToAttentionDelayTimer("LayerTabBar 
m_aBringLayerObjectsToAttentionDelayTimer")
 {
 EnableEditMode();
 SetSizePixel(Size(0, 0));
 SetMaxPageWidth( 150 );
 SetHelpId( HID_SD_TABBAR_LAYERS );
+
+m_aBringLayerObjectsToAttentionDelayTimer.SetInvokeHandler(
+LINK(this, LayerTabBar, 
BringLayerObjectsToAttentionDelayTimerHdl));
+m_aBringLayerObjectsToAttentionDelayTimer.SetTimeout(500);
 }
 
 LayerTabBar::~LayerTabBar()
@@ -137,6 +148,87 @@ void LayerTabBar::Select()
 pDispatcher->Execute(SID_SWITCHLAYER, SfxCallMode::SYNCHRON);
 }
 
+void LayerTabBar::MouseMove(const MouseEvent &rMEvt)
+{
+sal_uInt16 nPageId = 0;
+if (!rMEvt.IsLeaveWindow())
+nPageId = GetPageId(rMEvt.GetPosPixel());
+BringLayerObjectsToAttention(nPageId);
+return;
+}
+
+void LayerTabBar::BringLayerObjectsToAttention(const sal_uInt16 nPageId)
+{
+if (nPageId == m_nBringLayerObjectsToAttentionLastPageId)
+return;
+
+m_aBringLayerObjectsToAttentionDelayTimer.Stop();
+
+m_nBringLayerObjectsToAttentionLastPageId = nPageId;
+
+std::vector aRanges;
+
+if (nPageId != 0)
+{
+OUString aLayerName(GetLayerName(nPageId));
+if (pDrViewSh->GetView()->GetSdrPageView()->IsLayerVisible(aLayerName))
+{
+SdrLayerAdmin& rLayerAdmin = pDrViewSh->GetDoc()->GetLayerAdmin();
+SdrObjListIter aIter(pDrViewSh->GetActualPage(), 
SdrIterMode::DeepWithGroups);
+while (aIter.IsMore())
+{
+SdrObject* pObj = aIter.Next();
+assert(pObj != nullptr);
+if (pObj && (aLayerName == 
rLayerAdmin.GetLayerPerID(pObj->GetLayer())->GetName()))
+{
+::tools::Rectangle aRect(pObj->GetLogicRect());
+if (!aRect.IsEmpty())
+aRanges.emplace_back(aRect.Left(), aRect.Top(), 
aRect.Right(), aRect.Bottom());
+// skip over objects in groups
+if (pObj->IsGroupObject())
+{
+SdrObjListIter aSubListIter(pObj->GetSubList(), 
SdrIterMode::DeepWithGroups);
+while (aSubListIter.IsMore())
+{
+aIter.Next();
+aSubListIter.Next();
+}
+}
+}
+}
+}
+}
+
+if (m_xOverlayObject && m_xOverlayObject->getOverlayManager())
+m_xOverlayObject->getOverlayManager()->remove(*m_xOverlayObject);
+if (aRanges.empty())
+m_xOverlayObject.reset();
+else
+{
+m_xOverlayObject.reset(new sdr::overlay::OverlaySelection(
+   sdr::overlay::OverlayType::Invert,
+   Color(), std::move(aRanges), true/*unused 
for Invert type*/));
+m_aBringLayerObjectsToAttentionDelayTimer.Start();
+}
+}
+
+IMPL_LINK_NOARG(LayerTabBar, BringLayerObjectsToAttentionDelayTimerHdl, Timer 
*, void)
+{
+m_aBringLayerObjectsToAttentionDelayTimer.Stop();
+if (m_xOverlayObject)
+{
+if (SdrView* pView = pDrViewSh->GetDrawView())
+{
+if (SdrPaintWindow* pPaintWindow = pView->GetPaintWindow(0))
+{
+const rtl::Reference& 
xOverlayManager =
+pPaintWindow->GetOverlayManager();
+xOverlayManager->add(*m_xOverlayObject);
+}
+}
+}
+}
+
 void LayerTabBar::MouseButtonDown(const MouseEvent& rMEvt)
 {
 bool bSetPageID=false;
@@ -302,6 +394,7 @@ void 

core.git: basctl/source drawinglayer/source framework/source lingucomponent/source sc/source sd/source sfx2/source slideshow/source svx/source sw/source toolkit/source vcl/inc vcl/jsdialog vcl/workben

2023-12-23 Thread Caolán McNamara (via logerrit)
 basctl/source/basicide/basides1.cxx|6 +-
 basctl/source/basicide/localizationmgr.cxx |3 -
 drawinglayer/source/primitive2d/mediaprimitive2d.cxx   |5 +-
 framework/source/uiconfiguration/uiconfigurationmanager.cxx|4 -
 framework/source/uielement/spinfieldtoolbarcontroller.cxx  |9 ++-
 lingucomponent/source/thesaurus/libnth/nthesimp.cxx|3 -
 sc/source/filter/xcl97/XclImpChangeTrack.cxx   |3 -
 sc/source/ui/docshell/docsh4.cxx   |7 +-
 sc/source/ui/drawfunc/drawsh.cxx   |   12 ++---
 sd/source/console/PresenterScrollBar.cxx   |4 -
 sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx|2 
 sd/source/ui/view/drviews3.cxx |2 
 sfx2/source/appl/workwin.cxx   |3 -
 slideshow/source/engine/animationnodes/animationaudionode.cxx  |6 +-
 slideshow/source/engine/animationnodes/basenode.cxx|4 -
 slideshow/source/engine/animationnodes/sequentialtimecontainer.cxx |2 
 svx/source/sdr/primitive2d/sdrdecompositiontools.cxx   |3 -
 svx/source/svdraw/svdotextdecomposition.cxx|3 -
 sw/source/uibase/shells/tabsh.cxx  |   11 ++--
 toolkit/source/awt/vclxprinter.cxx |6 --
 vcl/inc/jsdialog/jsdialogbuilder.hxx   |4 -
 vcl/jsdialog/jsdialogbuilder.cxx   |4 -
 vcl/workben/vcldemo.cxx|   24 
+-
 writerfilter/source/dmapper/DomainMapper.cxx   |2 
 writerfilter/source/dmapper/DomainMapper.hxx   |2 
 writerfilter/source/dmapper/FontTable.cxx  |2 
 writerfilter/source/dmapper/FontTable.hxx  |2 
 writerfilter/source/dmapper/GraphicImport.cxx  |2 
 writerfilter/source/dmapper/GraphicImport.hxx  |2 
 writerfilter/source/dmapper/LoggedResources.hxx|2 
 writerfilter/source/dmapper/NumberingManager.cxx   |2 
 writerfilter/source/dmapper/NumberingManager.hxx   |2 
 writerfilter/source/dmapper/SettingsTable.cxx  |2 
 writerfilter/source/dmapper/SettingsTable.hxx  |2 
 writerfilter/source/dmapper/StyleSheetTable.cxx|2 
 writerfilter/source/dmapper/StyleSheetTable.hxx|2 
 xmloff/source/table/XMLTableImport.cxx |3 -
 37 files changed, 77 insertions(+), 82 deletions(-)

New commits:
commit 9a6298aedb663513c039efccc516dec3188dd8fa
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 14:13:05 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 19:52:50 2023 +0100

cid#1546006 COPY_INSTEAD_OF_MOVE

and

cid#1545999 COPY_INSTEAD_OF_MOVE
cid#1545995 COPY_INSTEAD_OF_MOVE
cid#1545994 COPY_INSTEAD_OF_MOVE
cid#1545989 COPY_INSTEAD_OF_MOVE
cid#1545982 COPY_INSTEAD_OF_MOVE
cid#1545977 COPY_INSTEAD_OF_MOVE
cid#1545970 COPY_INSTEAD_OF_MOVE
cid#1545856 COPY_INSTEAD_OF_MOVE
cid#1545845 COPY_INSTEAD_OF_MOVE
cid#1545838 COPY_INSTEAD_OF_MOVE
cid#1545776 COPY_INSTEAD_OF_MOVE
cid#1545774 COPY_INSTEAD_OF_MOVE
cid#1545744 COPY_INSTEAD_OF_MOVE
cid#1545719 COPY_INSTEAD_OF_MOVE
cid#1545716 COPY_INSTEAD_OF_MOVE
cid#1545687 COPY_INSTEAD_OF_MOVE
cid#1545648 COPY_INSTEAD_OF_MOVE
cid#1545643 COPY_INSTEAD_OF_MOVE
cid#1545641 COPY_INSTEAD_OF_MOVE
cid#1545604 COPY_INSTEAD_OF_MOVE
cid#1545531 COPY_INSTEAD_OF_MOVE
cid#1545530 COPY_INSTEAD_OF_MOVE
cid#1545524 COPY_INSTEAD_OF_MOVE
cid#1545516 COPY_INSTEAD_OF_MOVE
cid#1545501 COPY_INSTEAD_OF_MOVE
cid#1545486 COPY_INSTEAD_OF_MOVE

Change-Id: Idcf3e27bb9e81b6a77d5ef75c9376eb1d6aff8c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161245
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/basctl/source/basicide/basides1.cxx 
b/basctl/source/basicide/basides1.cxx
index 806ce96a88a2..4f2918dcc6d9 100644
--- a/basctl/source/basicide/basides1.cxx
+++ b/basctl/source/basicide/basides1.cxx
@@ -791,11 +791,11 @@ void Shell::ExecuteGlobal( SfxRequest& rReq )
 
 case SID_BASICIDE_MANAGE_LANG:
 {
-auto pRequest = std::make_shared(rReq);
+auto xRequest = std::make_shared(rReq);
 rReq.Ignore(); // the 'old' request is not relevant any more
 auto xDlg = std::make_shared(pCurWin ? 
pCurWin->GetFrameWeld() : nullptr, m_pCurLocalizationMgr);
-weld::DialogController::runAsync(xDlg, [pRe

core.git: comphelper/source

2023-12-23 Thread Caolán McNamara (via logerrit)
 comphelper/source/misc/configuration.cxx |4 
 1 file changed, 4 insertions(+)

New commits:
commit f82b8bf05a76ad9cc3fe950f4180c90bce56d79b
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 15:58:51 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 19:48:34 2023 +0100

ofz#65295 Abrt

Change-Id: I074a43191c4af304a2702012d0b810aad801d0d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161249
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/comphelper/source/misc/configuration.cxx 
b/comphelper/source/misc/configuration.cxx
index 6e500f619232..1ef359c7a9b6 100644
--- a/comphelper/source/misc/configuration.cxx
+++ b/comphelper/source/misc/configuration.cxx
@@ -183,6 +183,9 @@ css::uno::Any 
comphelper::detail::ConfigurationWrapper::getPropertyValue(OUStrin
 std::scoped_lock aGuard(maMutex);
 if (mbDisposed)
 throw css::lang::DisposedException();
+#if defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)
+return css::uno::Any();
+#else
 // Cache the configuration access, since some of the keys are used in hot 
code.
 auto it = maPropertyCache.find(path);
 if( it != maPropertyCache.end())
@@ -198,6 +201,7 @@ css::uno::Any 
comphelper::detail::ConfigurationWrapper::getPropertyValue(OUStrin
 css::uno::Any property = access->getByName(childName);
 maPropertyCache.emplace(path, property);
 return property;
+#endif
 }
 
 void comphelper::detail::ConfigurationWrapper::setPropertyValue(


core.git: drawinglayer/source

2023-12-23 Thread Patrick Luby (via logerrit)
 drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx |   18 +++
 1 file changed, 18 insertions(+)

New commits:
commit 3e582d9e3fbed8cb94284ac1ab6105cf74eccfe0
Author: Patrick Luby 
AuthorDate: Sat Dec 23 09:35:06 2023 -0500
Commit: Patrick Luby 
CommitDate: Sat Dec 23 19:32:24 2023 +0100

Related: tdf#158807 mutex must be locked when disposing a VirtualDevice

If the following .ppt document is opened in a debug build
and the document is left open for a minute or two without
changing any content, this destructor will be called on a
non-main thread with the mutex unlocked:

  https://bugs.documentfoundation.org/attachment.cgi?id=46801

This hits an assert in VirtualDevice::ReleaseGraphics() so
explicitly lock the mutex and explicitly dispose and clear
the VirtualDevice instances variables.

Change-Id: I5d371a4e99fca4aae2b6edc8b53eca10cb143aef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161243
Tested-by: Jenkins
Reviewed-by: Patrick Luby 

diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx 
b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
index 7562459e0b70..cdda7d660e7e 100644
--- a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
+++ b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
@@ -358,6 +358,7 @@ namespace drawinglayer::primitive2d
 AnimatedGraphicPrimitive2D(
 const Graphic& rGraphic,
 basegfx::B2DHomMatrix aTransform);
+virtual ~AnimatedGraphicPrimitive2D();
 
 /// data read access
 const basegfx::B2DHomMatrix& getTransform() const { return 
maTransform; }
@@ -421,6 +422,23 @@ namespace drawinglayer::primitive2d
 }
 }
 
+AnimatedGraphicPrimitive2D::~AnimatedGraphicPrimitive2D()
+{
+// Related: tdf#158807 mutex must be locked when disposing a 
VirtualDevice
+// If the following .ppt document is opened in a debug build
+// and the document is left open for a minute or two without
+// changing any content, this destructor will be called on a
+// non-main thread with the mutex unlocked:
+//   https://bugs.documentfoundation.org/attachment.cgi?id=46801
+// This hits an assert in VirtualDevice::ReleaseGraphics() so
+// explicitly lock the mutex and explicitly dispose and clear
+// the VirtualDevice instances variables.
+const SolarMutexGuard aSolarGuard;
+
+maVirtualDevice.disposeAndClear();
+maVirtualDeviceMask.disposeAndClear();
+}
+
 bool AnimatedGraphicPrimitive2D::operator==(const BasePrimitive2D& 
rPrimitive) const
 {
 // do not use 'GroupPrimitive2D::operator==' here, that would 
compare


libvisio.git: src/test

2023-12-23 Thread Libreoffice Gerrit user
 src/test/importtest.cpp |1 +
 1 file changed, 1 insertion(+)

New commits:
commit e7d32634cfeceea700f24af3176090f4501d534e
Author: Jan Tojnar 
AuthorDate: Sun Dec 10 15:42:24 2023 +0100
Commit: Ilmari Lauhakangas 
CommitDate: Sat Dec 23 17:43:39 2023 +0100

tests: Fix build with libxml 2.12

libxml 2.12.0 reorganized the headers, which removed `xmlParseMemory` 
function from the scope.

Change-Id: Ibd747fe7f83eb7c3a8b8cf57ac4a06e365986d46
Reviewed-on: https://gerrit.libreoffice.org/c/libvisio/+/160542
Tested-by: Ilmari Lauhakangas 
Reviewed-by: Ilmari Lauhakangas 

diff --git a/src/test/importtest.cpp b/src/test/importtest.cpp
index 9a01473..4a26b4a 100644
--- a/src/test/importtest.cpp
+++ b/src/test/importtest.cpp
@@ -14,6 +14,7 @@
 
 #include 
 
+#include 
 #include 
 
 #include "xmldrawinggenerator.h"


core.git: vcl/source

2023-12-23 Thread Samuel Mehrbrodt (via logerrit)
 vcl/source/window/dlgctrl.cxx |   11 ---
 1 file changed, 8 insertions(+), 3 deletions(-)

New commits:
commit ea1421747985bd09ad40565da8536e857b5c2e9a
Author: Samuel Mehrbrodt 
AuthorDate: Fri Dec 22 09:25:53 2023 +0100
Commit: Samuel Mehrbrodt 
CommitDate: Sat Dec 23 17:37:02 2023 +0100

tdf#157649 Allow omitting Alt key when focus is in dialog action area

Adapt to usual Windows experience: Allow triggering the Ok, Cancel, etc
buttons in the dialog action area without pressing the Alt key - when
the focus is in that area (and the accelerator is unique in that dialog).

Change-Id: I85b544867cf5507a15240b2972a26a1c248c4f82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161146
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt 

diff --git a/vcl/source/window/dlgctrl.cxx b/vcl/source/window/dlgctrl.cxx
index adf416b21769..90cdf353f8c0 100644
--- a/vcl/source/window/dlgctrl.cxx
+++ b/vcl/source/window/dlgctrl.cxx
@@ -941,7 +941,7 @@ bool Window::ImplDlgCtrl( const KeyEvent& rKEvt, bool 
bKeyInput )
 }
 }
 }
-else if (aKeyCode.IsMod2()) // tdf#151385
+else
 {
 sal_Unicode c = rKEvt.GetCharCode();
 if ( c )
@@ -952,8 +952,13 @@ bool Window::ImplDlgCtrl( const KeyEvent& rKEvt, bool 
bKeyInput )
 GetFocusFlags nGetFocusFlags = GetFocusFlags::Mnemonic;
 if ( pSWindow == ::ImplFindAccelWindow( this, i, c, 
nFormStart, nFormEnd ) )
 nGetFocusFlags |= GetFocusFlags::UniqueMnemonic;
-pSWindow->ImplControlFocus( nGetFocusFlags );
-return true;
+// tdf#157649 Allow omitting the Alt key when focus is in 
the dialog action area:
+bool bIsButtonBox = 
dynamic_cast(pSWindow->GetParent()) != nullptr;
+if ((bIsButtonBox && 
pSWindow->GetParent()->HasChildPathFocus(true)) || aKeyCode.IsMod2())
+{
+pSWindow->ImplControlFocus( nGetFocusFlags );
+return true;
+}
 }
 }
 }


dev-tools.git: help3/xhpeditor

2023-12-23 Thread Olivier Hallot (via logerrit)
 help3/xhpeditor/links.txt.xsl |   71 +++---
 1 file changed, 46 insertions(+), 25 deletions(-)

New commits:
commit cec75a82cb8b42c2c41734e286b7ee7ccb4cff57
Author: Olivier Hallot 
AuthorDate: Sat Dec 23 12:31:39 2023 -0300
Commit: Olivier Hallot 
CommitDate: Sat Dec 23 16:54:21 2023 +0100

Update icon replacement table from recent builds

Change-Id: I0ee978a36947eca46d1ddf8434554883098e15fc
Reviewed-on: https://gerrit.libreoffice.org/c/dev-tools/+/161247
Tested-by: Olivier Hallot 
Reviewed-by: Olivier Hallot 

diff --git a/help3/xhpeditor/links.txt.xsl b/help3/xhpeditor/links.txt.xsl
index 434b5bb8..d3aed42a 100644
--- a/help3/xhpeditor/links.txt.xsl
+++ b/help3/xhpeditor/links.txt.xsl
@@ -94,12 +94,7 @@
 cmd/32/insertframe.svg
 cmd/32/timefield.svg
 cmd/32/newdoc.svg
-cmd/32/outlinebullet.svg
-cmd/32/numberformatstandard.svg
-cmd/32/paragraphdialog.svg
-cmd/32/insertdraw.svg
-cmd/32/trackchanges.svg
-cmd/32/showtrackedchanges.svg
+cmd/32/insertpagenumberfield.svg
 cmd/lc_fontdialog.svg
 cmd/lc_addfield.svg
 cmd/lc_avmediaplayer.svg
@@ -138,12 +133,7 @@
 cmd/lc_insertframe.svg
 cmd/lc_timefield.svg
 cmd/lc_newdoc.svg
-cmd/lc_outlinebullet.svg
-cmd/lc_numberformatstandard.svg
-cmd/lc_paragraphdialog.svg
-cmd/lc_insertdraw.svg
-cmd/lc_trackchanges.svg
-cmd/lc_showtrackedchanges.svg
+cmd/lc_insertpagenumberfield.svg
 cmd/sc_fontdialog.svg
 cmd/sc_addfield.svg
 cmd/sc_avmediaplayer.svg
@@ -182,12 +172,7 @@
 cmd/sc_insertframe.svg
 cmd/sc_timefield.svg
 cmd/sc_newdoc.svg
-cmd/sc_outlinebullet.svg
-cmd/sc_numberformatstandard.svg
-cmd/sc_paragraphdialog.svg
-cmd/sc_insertdraw.svg
-cmd/sc_trackchanges.svg
-cmd/sc_showtrackedchanges.svg
+cmd/sc_insertpagenumberfield.svg
 cmd/32/trackchanges.svg
 cmd/sc_trackchanges.svg
 cmd/lc_trackchanges.svg
@@ -348,6 +333,8 @@
 cmd/32/ar/defaultnumbering.svg
 cmd/32/ar/deleterecord.svg
 cmd/32/ar/insertneutralparagraph.svg
+cmd/32/ar/jumpdownthislevel.svg
+cmd/32/ar/jumpupthislevel.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/newrecord.svg
@@ -381,6 +368,8 @@
 cmd/32/ar/defaultnumbering.svg
 cmd/32/ar/deleterecord.svg
 cmd/32/ar/insertneutralparagraph.svg
+cmd/32/ar/jumpdownthislevel.svg
+cmd/32/ar/jumpupthislevel.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/newrecord.svg
@@ -468,6 +457,8 @@
 cmd/32/ar/defaultnumbering.svg
 cmd/32/ar/deleterecord.svg
 cmd/32/ar/insertneutralparagraph.svg
+cmd/32/ar/jumpdownthislevel.svg
+cmd/32/ar/jumpupthislevel.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/linenumberingdialog.svg
 cmd/32/ar/newrecord.svg
@@ -515,6 +506,8 @@
 cmd/ar/lc_defaultnumbering.svg
 cmd/ar/lc_deleterecord.svg
 cmd/ar/lc_insertneutralparagraph.svg
+cmd/ar/lc_jumpdownthislevel.svg
+cmd/ar/lc_jumpupthislevel.svg
 cmd/ar/lc_linenumberingdialog.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/lc_newrecord.svg
@@ -540,6 +533,8 @@
 cmd/ar/sc_defaultnumbering.svg
 cmd/ar/sc_deleterecord.svg
 cmd/ar/sc_insertneutralparagraph.svg
+cmd/ar/sc_jumpdownthislevel.svg
+cmd/ar/sc_jumpupthislevel.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_newrecord.svg
@@ -581,6 +576,8 @@
 cmd/ar/lc_defaultnumbering.svg
 cmd/ar/lc_deleterecord.svg
 cmd/ar/lc_insertneutralparagraph.svg
+cmd/ar/lc_jumpdownthislevel.svg
+cmd/ar/lc_jumpupthislevel.svg
 cmd/ar/lc_linenumberingdialog.svg
 cmd/ar/lc_linenumberingdialog.svg
 cmd/ar/lc_newrecord.svg
@@ -606,6 +603,8 @@
 cmd/ar/sc_defaultnumbering.svg
 cmd/ar/sc_deleterecord.svg
 cmd/ar/sc_insertneutralparagraph.svg
+cmd/ar/sc_jumpdownthislevel.svg
+cmd/ar/sc_jumpupthislevel.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_newrecord.svg
@@ -755,6 +754,8 @@
 cmd/ar/lc_defaultnumbering.svg
 cmd/ar/lc_deleterecord.svg
 cmd/ar/lc_insertneutralparagraph.svg
+cmd/ar/lc_jumpdownthislevel.svg
+cmd/ar/lc_jumpupthislevel.svg
 cmd/ar/lc_linenumberingdialog.svg
 cmd/ar/lc_linenumberingdialog.svg
 cmd/ar/lc_newrecord.svg
@@ -780,6 +781,8 @@
 cmd/ar/sc_defaultnumbering.svg
 cmd/ar/sc_deleterecord.svg
 cmd/ar/sc_insertneutralparagraph.svg
+cmd/ar/lc_jumpdownthislevel.svg
+cmd/ar/lc_jumpupthislevel.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_linenumberingdialog.svg
 cmd/ar/sc_newrecord.svg
@@ -1180,19 +1183,19 @@
 cmd/lc_open.svg
 cmd/sc_open.svg
 cmd/32/ellipse.svg
-cmd/32/basicshapes.diamond.svg
+cmd/32/graphic.svg
 cmd/32/rect.svg
 cmd/32/ellipse.svg
 cmd/32/freeline_unfilled.svg
 cmd/32/rect.svg
 cmd/lc_ellipse.svg
-cmd/lc_basicshapes.diamond.svg
+cmd/lc_graphic.svg
 cmd/lc_rect.svg
 cmd/lc_ellipse.svg
 cmd/lc_freeline_unfilled.svg
 cmd/lc_rect.svg
 cmd/sc_ellipse.svg
-cmd/sc_basicshapes.diamond.svg
+cmd/sc_graphic.svg
 cmd/sc_rect.svg
 cmd/sc_ellipse.svg
 cmd/sc_freeline_unfilled.svg
@@ -1930,6 +1933,7 @@
 cmd/sc_showsinglepage.svg
 cmd/lc_diaeffect.svg
 cmd/sc_colorsettings.svg
+cmd/lc_insertmath.svg
 cmd/lc_dbviewfunctions.svg
 cmd/lc_galle

dev-tools.git: help3/xhpeditor

2023-12-23 Thread Olivier Hallot (via logerrit)
 help3/xhpeditor/DisplayArea.css |   65 ++--
 1 file changed, 36 insertions(+), 29 deletions(-)

New commits:
commit 13f010b2187a779473655bf563fa121b7f6ad68d
Author: Olivier Hallot 
AuthorDate: Sat Dec 23 12:29:30 2023 -0300
Commit: Olivier Hallot 
CommitDate: Sat Dec 23 16:54:03 2023 +0100

Help editor: Housekeeping on CSS

Bring some classes and settings from recent CSS in help/default.css

Change-Id: I9287c1570e4e76c9eb5bc19f248d6db3a7cb6a45
Reviewed-on: https://gerrit.libreoffice.org/c/dev-tools/+/161246
Tested-by: Olivier Hallot 
Reviewed-by: Olivier Hallot 

diff --git a/help3/xhpeditor/DisplayArea.css b/help3/xhpeditor/DisplayArea.css
index 6b4df043..c6351c0f 100644
--- a/help3/xhpeditor/DisplayArea.css
+++ b/help3/xhpeditor/DisplayArea.css
@@ -9,6 +9,14 @@
 
 
 /* Imported from default css for DisplayArea */
+
+:root {
+  --font_mono: Menlo, "Cascadia Mono", "Cascadia Code", Consolas, "DejaVu Sans 
Mono", monospace;
+  --font_body: Ubuntu, Cantarell, "Segoe UI Variable", "Segoe UI", "Noto 
Sans", "DejaVu Sans", "Lucida Grande", sans-serif, FreeSerif, NanumGothic, 
"Noto Sans Tibetan", Taprom;
+  --background-color: #f7f8f7;
+  --module-color: #18A303;
+}
+
 #DisplayArea {
 background-color: white;
 overflow: auto;
@@ -26,14 +34,14 @@
 .listitemintable,
 .paragraph,
 .tablecontent {
-font-family: -apple-system, system-ui, "Segoe UI", Roboto, Ubuntu, 
Cantarell, "Noto Sans", "DejaVu Sans", "Lucida Grande", "Helvetica Neue", 
Helvetica, Arial, sans-serif, FreeSerif, NanumGothic, "Noto Sans Tibetan", 
Taprom;
+font-family: var(--font_body);
 }
 .input {
 background-color: rgba(0,0,0,0.04);
 transition-property: background-color;
 transition-duration: 150ms;
 border-bottom: 1px dashed rgba(0,0,0,0.1);
-font-family: Menlo, Consolas, "DejaVu Sans Mono", "Nimbus Mono L", "Lucida 
Sans Typewriter", "Courier New", Courier, Monaco, monospace;
+font-family: var(--font_mono);
 }
 
 #DisplayArea  ::selection {
@@ -60,12 +68,16 @@
 border-radius: 2px;
 display: inline;
 padding: 1px 3px;
-font-family: Menlo, Consolas, "DejaVu Sans Mono", "Nimbus Mono L", "Lucida 
Sans Typewriter", "Courier New", Courier, Monaco, monospace;
+font-family: var(--font_mono);
+word-wrap: anywhere;
+}
+.literal {
+white-space: normal;
 }
 .smathcode {
 border-radius: 2px;
 padding: 1px 3px;
-font-family: Menlo, Consolas, "DejaVu Sans Mono", "Nimbus Mono L", "Lucida 
Sans Typewriter", "Courier New", Courier, Monaco, monospace;
+font-family: var(--font_mono);
 }
 
 .acronym {
@@ -82,7 +94,7 @@
 }
 .keycode {
 /*font-weight: bold;*/
-font-family: Menlo, Consolas, "DejaVu Sans Mono", "Nimbus Mono L", "Lucida 
Sans Typewriter", "Courier New", Courier, Monaco, monospace;
+font-family: var(--font_mono);
 }
 .widget{
 padding: 1px 10px;
@@ -100,33 +112,27 @@
 .warning {
 display:flex;
 align-items: center;
-border-radius: 0 4px 4px 0;
-box-shadow: 0 2px 2px -2px rgba(0,0,0,0.2);
+border-radius: 2px;
+box-shadow: 0 2px 5px -3px rgb(0 0 0 / 10%);
 padding: 0.2em;
 margin-top: 15px;
 }
 .note {
-border-left: 4px solid #FFDE09;
-background-color: #FFF4D0;
+border-left: 2px solid #309048;
+background-color: #d9f1dd;
 }
 .tip {
-border-left: 4px solid #38618C;
-background-color: #DAE2EA;
+border-left: 2px solid #0063b1;
+background-color: #cde5f7;
 }
 .warning {
-border-left: 4px solid #FF5964;
-background-color: #FFE0E2;
-}
-.noteicon {
-padding:0.3em;
-transition: transform .2s; /* Animation */
-}
-.noteicon:hover {
-transform: scale(2.0); /* (200% zoom - Note: if the zoom is too large, it 
will go outside of the viewport) */
+border-left: 2px solid #ed8733;
+background-color: #f6f1d2;
 }
-.notetext {
+.noteicon, .notetext {
 padding:0.3em;
 }
+
 #DisplayArea h1,
 #DisplayArea h2,
 #DisplayArea h3,
@@ -207,19 +213,13 @@
 border-bottom: 1px solid #E8E8E8;
 }
 /* Special case of icon table*/
-icontable {
+.icontable {
 display:flex;
 align-items:center;
 }
 .iconcell {
 padding:0.3em;
 }
-.imageicon {
-transition: transform .2s; /* Animation */
-}
-.imageicon:hover{
-transform: scale(2.0); /* (200% zoom - Note: if the zoom is too large, it 
will go outside of the viewport) */
-}
 
 #DisplayArea table {
 box-shadow: rgba(0,0,0,0.1) 0px 1px 3px 0px;
@@ -235,16 +235,23 @@ icontable {
 border-right: 0;
 padding: 0.3em;
 }
+
 .tablehead,
 .tableheadintable {
 font-weight: bold;
 margin-top: 0px;
 }
+
 .tableheadcell {
-background: #148603;
+background: var(--module-color);
 color: white;
 vertical-align:top;
 }
+
+.table_font_small {
+font-size: 0.98rem;
+}
+
 #DisplayArea footer {
 border-top: 2px solid #148603;
 padding: 15px 10px 0 10px;


dev-tools.git: help3/xhpeditor

2023-12-23 Thread Juan José González (via logerrit)
 help3/xhpeditor/index.php   |   42 --
 help3/xhpeditor/logo.png|binary
 help3/xhpeditor/views/empty_preview.php |   11 +++
 help3/xhpeditor/xhp2html.js |2 
 help3/xhpeditor/xhpeditor.css   |   93 +++-
 5 files changed, 117 insertions(+), 31 deletions(-)

New commits:
commit 0a2990a97b20220cd8c2f7dc2ba227488fc65349
Author: Juan José González 
AuthorDate: Fri Dec 22 07:17:30 2023 -0700
Commit: Olivier Hallot 
CommitDate: Sat Dec 23 16:41:28 2023 +0100

Add header, menu bar and toolbar takes the whole width of the window

empty preview message.

A couple of screenshots


https://s3.us-west-1.amazonaws.com/juanjosegzl.com/images/xhpeditorempty+message.png

https://s3.us-west-1.amazonaws.com/juanjosegzl.com/images/xhpeditorrender.png

Change-Id: If0790ac728cf4f5ea8725a4c691d75b6a36fc607
Reviewed-on: https://gerrit.libreoffice.org/c/dev-tools/+/161208
Reviewed-by: Olivier Hallot 
Tested-by: Olivier Hallot 

diff --git a/help3/xhpeditor/index.php b/help3/xhpeditor/index.php
index 710f8adb..1af632e5 100644
--- a/help3/xhpeditor/index.php
+++ b/help3/xhpeditor/index.php
@@ -9,7 +9,11 @@
 xpath("//filename");
+}
 ?>
 
 
@@ -52,32 +56,38 @@ $xhp = $_POST["xhpdoc"];
 
 
 
-
-LibreOffice Documentation XHP Editor
-
-
-
+  
+
+  
+  LibreOffice Documentation XHP Editor
+  
+  
+  
+
+
+
+  
 
 
 
 
 
 xpath("//filename");
 if (isset($_POST["render_page"])) {
-echo 'Rendered page: 
'.$xhp_filename[0];
-echo 'System: ';
+echo '';
+echo 'System: ';
 $opSys = array("MAC", "WIN", "UNIX");
 foreach ($opSys as $value) {
-   echo ''.$value.' ';
+   echo ''.$value.' ';
}
-echo ' Module: ';
+echo 'Module: ';
 $appModule = array("WRITER", "CALC", "IMPRESS", "DRAW", "BASE", 
"MATH", "CHART");
 foreach ($appModule as $value){
-echo ''.$value.' ';
+echo ''.$value.' ';
 }
-echo '';
+echo '';
 $xml = new DOMDocument();
 $xml->loadXML($xhp);
 $xsl = new DOMDocument;
@@ -87,7 +97,7 @@ $xhp = $_POST["xhpdoc"];
 $proc->setParameter("","productname",$CONFIG["productname"]);
 $proc->setParameter("","iconpath",$CONFIG["icon_path"]);
 $proc->importStyleSheet($xsl);
-echo $proc->transformToXml($xml);
+echo @$proc->transformToXml($xml);
 echo "";
 }elseif (isset($_POST["check_xhp"])) {
 libxml_use_internal_errors(true);
@@ -153,7 +163,7 @@ $xhp = $_POST["xhpdoc"];
 echo "";
 } else {
 echo '';
-echo 'Viewing Area';
+  include 'views/empty_preview.php';
 echo "";
 };
 ?>
diff --git a/help3/xhpeditor/logo.png b/help3/xhpeditor/logo.png
new file mode 100644
index ..ad22bf16
Binary files /dev/null and b/help3/xhpeditor/logo.png differ
diff --git a/help3/xhpeditor/views/empty_preview.php 
b/help3/xhpeditor/views/empty_preview.php
new file mode 100644
index ..6bb4afbf
--- /dev/null
+++ b/help3/xhpeditor/views/empty_preview.php
@@ -0,0 +1,11 @@
+
+  
+
+  Create or open a file
+
+
+  Start working on a new 
file. Or
+  Open an existing 
file.
+
+  
+
diff --git a/help3/xhpeditor/xhp2html.js b/help3/xhpeditor/xhp2html.js
index 930b451b..4ce2886f 100644
--- a/help3/xhpeditor/xhp2html.js
+++ b/help3/xhpeditor/xhp2html.js
@@ -37,7 +37,7 @@ var editor = 
CodeMirror.fromTextArea(document.getElementById("xhpeditor"), {
 hintOptions: {schemaInfo: this.xhptags}
 });
 
-const height = window.innerHeight - 
document.getElementById('editorpageheader').offsetHeight - 16;
+const height = window.innerHeight - 
document.getElementById('editorpageheader').offsetHeight;
 editor.setSize(null, height);
 
 function readSingleFile(e) {
diff --git a/help3/xhpeditor/xhpeditor.css b/help3/xhpeditor/xhpeditor.css
index 7d9bdce4..c4b91e49 100644
--- a/help3/xhpeditor/xhpeditor.css
+++ b/help3/xhpeditor/xhpeditor.css
@@ -1,4 +1,4 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* -*- Mode: css; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
  * This file is part of the LibreOffice project.
  *
@@ -19,6 +19,25 @@ ol, ul {
 
 /* css for the main editor  web page */
 
+*, ::after, ::before {
+box-sizing: border-box;
+}
+
+#editorpageheader img {
+height: 50px;
+}
+
+#editorpageheader h1 {
+font-size: 1em;
+}
+
+#editorpageheader header {
+display: flex;
+align-items: center;
+justify-content: space-between;
+padding: 0 1em;
+}
+
 .form_area{
 border:1px solid grey;
 height: 

Jan Tojnar (license statement)

2023-12-23 Thread jtojnar

All of my past & future contributions to LibreOffice may be
licensed under the MPLv2/LGPLv3+ dual license.




core.git: svx/source sw/source

2023-12-23 Thread Caolán McNamara (via logerrit)
 svx/source/form/datanavi.cxx|2 +-
 sw/source/uibase/shells/grfshex.cxx |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 25d4fae8d3f69dc4d03c1a04233e6ed670742ed5
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 14:00:26 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 16:03:30 2023 +0100

cid#1546064 COPY_INSTEAD_OF_MOVE

and

cid#1546034 COPY_INSTEAD_OF_MOVE

Change-Id: If533400b570f20d80f1c41431ceba81579e0e25d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161242
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx
index 0178a82c5947..9116c0eb075f 100644
--- a/svx/source/form/datanavi.cxx
+++ b/svx/source/form/datanavi.cxx
@@ -306,7 +306,7 @@ namespace svxform
 
 // tdf#154535 create the OXFormsDescriptor on-demand so we don't cause 
an unwanted
 // Binding to be created unless we are forced to.
-auto fnCreateFormsDescriptor = [this, szName, xNode, xPropSet](){
+auto fnCreateFormsDescriptor = [this, szName=std::move(szName), 
xNode=std::move(xNode), xPropSet=std::move(xPropSet)](){
 OXFormsDescriptor desc;
 desc.szName = szName;
 if (xNode) {
diff --git a/sw/source/uibase/shells/grfshex.cxx 
b/sw/source/uibase/shells/grfshex.cxx
index 45d40764525b..a9af8799b009 100644
--- a/sw/source/uibase/shells/grfshex.cxx
+++ b/sw/source/uibase/shells/grfshex.cxx
@@ -80,7 +80,7 @@ bool SwTextShell::InsertMediaDlg( SfxRequest const & rReq )
 css::uno::Reference 
xDispatchProvider(GetView().GetViewFrame().GetFrame().GetFrameInterface(), 
css::uno::UNO_QUERY);
 
 rtl::Reference xPlayerListener(new 
avmedia::PlayerListener(
-[xDispatchProvider, aURL, bLink](const 
css::uno::Reference& rPlayer){
+[xDispatchProvider=std::move(xDispatchProvider), aURL, 
bLink](const css::uno::Reference& rPlayer){
 css::awt::Size aSize = 
rPlayer->getPreferredPlayerWindowSize();
 
avmedia::MediaWindow::dispatchInsertAVMedia(xDispatchProvider, aSize, aURL, 
bLink);
 }));


core.git: svl/source

2023-12-23 Thread Caolán McNamara (via logerrit)
 svl/source/items/itemset.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit b803b3a7a1eda1b9862112f399c0a8b988c1f930
Author: Caolán McNamara 
AuthorDate: Sat Dec 23 13:52:09 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 15:51:39 2023 +0100

cid#1559884 Uninitialized scalar variable

etc, since:

commit e9e3576ada06d53de12efed041fb309fe5388e01
Date:   Thu Dec 21 22:49:27 2023 +0100

svl: fix build with --enable-debug

Change-Id: I1c3c82f0f1674cb46fa6a36d5f9f5cc4435ebef1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161241
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 4a1c6351c7f3..4cadfa6b596e 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -61,7 +61,7 @@ static bool g_bItemClassicMode(getenv("ITEM_CLASSIC_MODE"));
 SfxPoolItemHolder::SfxPoolItemHolder()
 : m_pPool(nullptr)
 , m_pItem(nullptr)
-#ifdef DBG_UTIL
+#ifndef NDEBUG
 , m_bDeleted(false)
 #endif
 {


core.git: svx/source

2023-12-23 Thread Armin Le Grand (allotropia) (via logerrit)
 svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx |2 --
 1 file changed, 2 deletions(-)

New commits:
commit 1582bde861ad8e556fcf06657e7228980ff284e9
Author: Armin Le Grand (allotropia) 
AuthorDate: Fri Dec 22 17:20:21 2023 +0100
Commit: Armin Le Grand 
CommitDate: Sat Dec 23 15:49:08 2023 +0100

Add flush mechanism to buffered Primitives III

There seem to be problems with re-creation of
SdrCustomShapePrimitive2D primitive presentation
due to SdrText not being held as
uno::Reference everywhere. For now,
try if excluding SdrCustomShapePrimitive2D from
being flushed helps - may give hints already...

Change-Id: I58373f7dcd81dd24fbf7a0687bb782326ad290fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161190
Tested-by: Jenkins
Reviewed-by: Armin Le Grand 

diff --git a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx 
b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
index b58274106211..19717e2eb121 100644
--- a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
@@ -102,8 +102,6 @@ namespace drawinglayer::primitive2d
 mb3DShape(b3DShape),
 maTransform(std::move(aTransform))
 {
-// activate callback to flush buffered decomposition content
-setCallbackSeconds(10);
 }
 
 bool SdrCustomShapePrimitive2D::operator==(const BasePrimitive2D& 
rPrimitive) const


Declan Fodor license statement

2023-12-23 Thread Declan Fodor
All of my past & future contributions to LibreOffice may be
licensed under the MPLv2/LGPLv3+ dual license.

Looking forward to contributing,
Declan Fodor


core.git: 2 commits - comphelper/source tools/source

2023-12-23 Thread Caolán McNamara (via logerrit)
 comphelper/source/streaming/seqinputstreamserv.cxx |3 +--
 tools/source/generic/bigint.cxx|9 +
 2 files changed, 6 insertions(+), 6 deletions(-)

New commits:
commit cee019927fe3beaf20653e1a98beb85147d14aad
Author: Caolán McNamara 
AuthorDate: Fri Dec 22 21:45:02 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 14:40:16 2023 +0100

cid#1545209 COPY_INSTEAD_OF_MOVE

Change-Id: Idd82be5f2354787735f4e47e8cfe9e9a7371a973
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161203
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/comphelper/source/streaming/seqinputstreamserv.cxx 
b/comphelper/source/streaming/seqinputstreamserv.cxx
index 5d10029a5024..22fe8f8f0ea1 100644
--- a/comphelper/source/streaming/seqinputstreamserv.cxx
+++ b/comphelper/source/streaming/seqinputstreamserv.cxx
@@ -196,9 +196,8 @@ void SAL_CALL SequenceInputStreamService::initialize( const 
uno::Sequence< css::
 uno::Reference< io::XInputStream > xInputStream(
 static_cast< ::cppu::OWeakObject* >( new 
::comphelper::SequenceInputStream( aSeq ) ),
 uno::UNO_QUERY_THROW );
-uno::Reference< io::XSeekable > xSeekable( xInputStream, 
uno::UNO_QUERY_THROW );
+m_xSeekable.set(xInputStream, uno::UNO_QUERY_THROW);
 m_xInputStream = xInputStream;
-m_xSeekable = xSeekable;
 m_bInitialized = true;
 }
 
commit 8013fcadd975d5e72e86afd96de41feaca42a23a
Author: Caolán McNamara 
AuthorDate: Fri Dec 22 21:42:05 2023 +
Commit: Caolán McNamara 
CommitDate: Sat Dec 23 14:40:09 2023 +0100

cid#1471704 Assignment of overlapping memory

overlapping_assignment: Assigning (*this).nNum[0] to (*this).nVal,
which have overlapping memory locations and different types.

Change-Id: I70d7236af27bf5399ad5eb5553befd2eb33e37db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161202
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/tools/source/generic/bigint.cxx b/tools/source/generic/bigint.cxx
index 240494dfc15d..80b86af6013c 100644
--- a/tools/source/generic/bigint.cxx
+++ b/tools/source/generic/bigint.cxx
@@ -76,14 +76,15 @@ void BigInt::Normalize()
 {
 constexpr sal_uInt32 maxForPosInt32 = 
std::numeric_limits::max();
 constexpr sal_uInt32 maxForNegInt32 = 
-sal_Int64(std::numeric_limits::min());
-if (bIsNeg && nNum[0] <= maxForNegInt32)
+sal_uInt32 nNum0 = nNum[0];
+if (bIsNeg && nNum0 <= maxForNegInt32)
 {
-nVal = -sal_Int64(nNum[0]);
+nVal = -sal_Int64(nNum0);
 nLen = 0;
 }
-else if (!bIsNeg && nNum[0] <= maxForPosInt32)
+else if (!bIsNeg && nNum0 <= maxForPosInt32)
 {
-nVal = nNum[0];
+nVal = nNum0;
 nLen = 0;
 }
 }


core.git: extras/CustomTarget_autocorr.mk extras/Package_autocorr.mk extras/source

2023-12-23 Thread Theppitak Karoonboonyanan (via logerrit)
 extras/CustomTarget_autocorr.mk  |3 
 extras/Package_autocorr.mk   |1 
 extras/source/autocorr/lang/th/DocumentList.xml  |  853 +++
 extras/source/autocorr/lang/th/META-INF/manifest.xml |6 
 4 files changed, 863 insertions(+)

New commits:
commit 4c91770dde40d248af736436716994dc367a54a2
Author: Theppitak Karoonboonyanan 
AuthorDate: Thu Nov 30 22:32:17 2023 +0700
Commit: Ilmari Lauhakangas 
CommitDate: Sat Dec 23 12:59:24 2023 +0100

Add Thai AutoCorrect data

As part of tdf#158454

Change-Id: Ia81eeb76e8d1fc09d7d19c3c979e30737e5c69d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160159
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas 
Reviewed-by: Ilmari Lauhakangas 

diff --git a/extras/CustomTarget_autocorr.mk b/extras/CustomTarget_autocorr.mk
index f97c8f1d2d71..bfc6177105e9 100644
--- a/extras/CustomTarget_autocorr.mk
+++ b/extras/CustomTarget_autocorr.mk
@@ -55,6 +55,7 @@ extras_AUTOCORR_LANGS := \
sr-ME:sr-ME \
sr-RS:sr-RS \
sv:sv-SE \
+   th:th-TH \
tr:tr-TR \
vi:vi-VN \
vro:vro-EE \
@@ -223,6 +224,8 @@ extras_AUTOCORR_XMLFILES := \
sv/META-INF/manifest.xml \
sv/SentenceExceptList.xml \
sv/WordExceptList.xml \
+   th/DocumentList.xml \
+   th/META-INF/manifest.xml \
tr/DocumentList.xml \
tr/META-INF/manifest.xml \
tr/SentenceExceptList.xml \
diff --git a/extras/Package_autocorr.mk b/extras/Package_autocorr.mk
index cc14860637ee..b9a50b3ed230 100644
--- a/extras/Package_autocorr.mk
+++ b/extras/Package_autocorr.mk
@@ -53,6 +53,7 @@ $(eval $(call 
gb_Package_add_files,extras_autocorr,$(LIBO_SHARE_FOLDER)/autocorr
acor_sr-ME.dat \
acor_sr-RS.dat \
acor_sv-SE.dat \
+   acor_th-TH.dat \
acor_tr-TR.dat \
acor_vi-VN.dat \
acor_vro-EE.dat \
diff --git a/extras/source/autocorr/lang/th/DocumentList.xml 
b/extras/source/autocorr/lang/th/DocumentList.xml
new file mode 100644
index ..6282f1c409bd
--- /dev/null
+++ b/extras/source/autocorr/lang/th/DocumentList.xml
@@ -0,0 +1,853 @@
+
+http://openoffice.org/2001/block-list";>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+   

core.git: Branch 'libreoffice-7-6' - cui/source include/svx svx/source

2023-12-23 Thread Noel Grandin (via logerrit)
 cui/source/dialogs/colorpicker.cxx |7 ---
 include/svx/PaletteManager.hxx |2 +-
 svx/source/tbxctrls/PaletteManager.cxx |   11 ++-
 3 files changed, 11 insertions(+), 9 deletions(-)

New commits:
commit 15be0847190fee716689938e70fcb4ade208d97f
Author: Noel Grandin 
AuthorDate: Wed Dec 20 11:21:27 2023 +0200
Commit: Noel Grandin 
CommitDate: Sat Dec 23 12:34:22 2023 +0100

tdf#156820 Fix crash in custom color picker

which requires

(*) keeping ColorPicker alive during the runAsync in
ColorPicker::startExecuteModal

(*) keeping the PaletteManager alive during the ExecuteAsync in
PaletteManager::PopupCOlorPicker

Noting that MattK debugged the cause of this.

Change-Id: I07efe8e6514f8882b1347c79c6150578c234bb9d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161054
Tested-by: Noel Grandin 
Reviewed-by: Noel Grandin 
(cherry picked from commit 78ccae0d42d168f845ddbd7cb694d80dfb04f84d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161161
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
(cherry picked from commit 97a81fffc1c2ab77749c462b61b3eed860b09d77)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161164

diff --git a/cui/source/dialogs/colorpicker.cxx 
b/cui/source/dialogs/colorpicker.cxx
index 24dda1936a2a..688a64f190ec 100644
--- a/cui/source/dialogs/colorpicker.cxx
+++ b/cui/source/dialogs/colorpicker.cxx
@@ -1345,12 +1345,13 @@ void SAL_CALL ColorPicker::setDialogTitle( const 
OUString& )
 void SAL_CALL ColorPicker::startExecuteModal( const css::uno::Reference< 
css::ui::dialogs::XDialogClosedListener >& xListener )
 {
 std::shared_ptr xDlg = 
std::make_shared(Application::GetFrameWeld(mxParent), 
mnColor, mnMode);
-weld::DialogController::runAsync(xDlg, [this, xDlg, xListener] (sal_Int32 
nResult) {
+rtl::Reference xThis(this);
+weld::DialogController::runAsync(xDlg, [xThis, xDlg, xListener] (sal_Int32 
nResult) {
 if (nResult)
-mnColor = xDlg->GetColor();
+xThis->mnColor = xDlg->GetColor();
 
 sal_Int16 nRet = static_cast(nResult);
-css::ui::dialogs::DialogClosedEvent aEvent( *this, nRet );
+css::ui::dialogs::DialogClosedEvent aEvent( *xThis, nRet );
 xListener->dialogClosed( aEvent );
 });
 }
diff --git a/include/svx/PaletteManager.hxx b/include/svx/PaletteManager.hxx
index f2711b2e022a..81f30ea7de76 100644
--- a/include/svx/PaletteManager.hxx
+++ b/include/svx/PaletteManager.hxx
@@ -33,7 +33,7 @@ namespace svx { class ToolboxButtonColorUpdaterBase; }
 namespace weld { class Window; }
 namespace model { class ColorSet; }
 
-class SVXCORE_DLLPUBLIC PaletteManager
+class SVXCORE_DLLPUBLIC PaletteManager : public 
std::enable_shared_from_this
 {
 const sal_uInt16mnMaxRecentColors;
 
diff --git a/svx/source/tbxctrls/PaletteManager.cxx 
b/svx/source/tbxctrls/PaletteManager.cxx
index 1a48c403feb2..cc53c3ab74c8 100644
--- a/svx/source/tbxctrls/PaletteManager.cxx
+++ b/svx/source/tbxctrls/PaletteManager.cxx
@@ -405,15 +405,16 @@ void PaletteManager::PopupColorPicker(weld::Window* 
pParent, const OUString& aCo
 m_pColorDlg = std::make_unique();
 m_pColorDlg->SetColor(rInitialColor);
 m_pColorDlg->SetMode(svtools::ColorPickerMode::Modify);
-m_pColorDlg->ExecuteAsync(pParent, [this, aCommandCopy] (sal_Int32 
nResult) {
+std::shared_ptr xSelf(shared_from_this());
+m_pColorDlg->ExecuteAsync(pParent, [xSelf, aCommandCopy] (sal_Int32 
nResult) {
 if (nResult == RET_OK)
 {
-Color aLastColor = m_pColorDlg->GetColor();
+Color aLastColor = xSelf->m_pColorDlg->GetColor();
 OUString sColorName = "#" + 
aLastColor.AsRGBHexString().toAsciiUpperCase();
 NamedColor aNamedColor(aLastColor, sColorName);
-SetSplitButtonColor(aNamedColor);
-AddRecentColor(aLastColor, sColorName);
-maColorSelectFunction(aCommandCopy, aNamedColor);
+xSelf->SetSplitButtonColor(aNamedColor);
+xSelf->AddRecentColor(aLastColor, sColorName);
+xSelf->maColorSelectFunction(aCommandCopy, aNamedColor);
 }
 });
 }


core.git: dbaccess/source

2023-12-23 Thread Julien Nabet (via logerrit)
 dbaccess/source/ui/control/RelationControl.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 22c3eeafc391f867632b3f88e2298d5747706484
Author: Julien Nabet 
AuthorDate: Fri Dec 22 21:47:40 2023 +0100
Commit: Julien Nabet 
CommitDate: Sat Dec 23 12:10:01 2023 +0100

Fix b26611017a75867efe97b4cf53df96cbd025cc5e

Following Caolán's comment here:
https://gerrit.libreoffice.org/c/core/+/161185

Thank you Caolán for the review!

Change-Id: I8ac949fccc8a11cf483f679d4c0d2dc16e8c680c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161193
Tested-by: Jenkins
Reviewed-by: Julien Nabet 

diff --git a/dbaccess/source/ui/control/RelationControl.cxx 
b/dbaccess/source/ui/control/RelationControl.cxx
index 279e3a916ef3..ad625b8126a4 100644
--- a/dbaccess/source/ui/control/RelationControl.cxx
+++ b/dbaccess/source/ui/control/RelationControl.cxx
@@ -223,7 +223,7 @@ namespace dbaui
 OConnectionLineDataVec& rLines = 
m_pConnData->GetConnLineDataList();
 if ( rLines.size() <= o3tl::make_unsigned(nRow) )
 {
-rLines.emplace_back();
+rLines.emplace_back(new OConnectionLineData());
 nRow = rLines.size() - 1;
 // add new past-rLines row
 m_ops.emplace_back(INSERT, make_pair(nRow+1, nRow+2));


core.git: Branch 'libreoffice-24-2' - external/onlineupdate scp2/source

2023-12-23 Thread Stephan Bergmann (via logerrit)
 external/onlineupdate/install_updateservice.cxx |  128 
 external/onlineupdate/install_updateservice.def |1 
 scp2/source/ooo/windowscustomaction_ooo.scp |   17 ++-
 3 files changed, 101 insertions(+), 45 deletions(-)

New commits:
commit b66c2c243b4877475341011d851196a201610321
Author: Stephan Bergmann 
AuthorDate: Fri Dec 22 17:17:46 2023 +0100
Commit: Stephan Bergmann 
CommitDate: Sat Dec 23 11:32:16 2023 +0100

Fix Windows MSI custom action for --enable-online-update-mar

The install/uninstall actions need to be type 3137 to run privileged, which
means that they must be placed within certain limits (e.g., not at "end") 
and
that they cannot access INSTALLLOCATION (so need an additional un-privileged
prepare action to forward that value).

Plus, the call to CreateProcessW was passing arguments in a completely wrong
way.

And then some clean-up.

Change-Id: I5b5f338da08931e48653f282cc9fa7b00955fea6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161191
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 
(cherry picked from commit a97ed6a69482220e44c407d19d4a1287d659e067)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161210

diff --git a/external/onlineupdate/install_updateservice.cxx 
b/external/onlineupdate/install_updateservice.cxx
index 4604e55462d6..c1d547156098 100644
--- a/external/onlineupdate/install_updateservice.cxx
+++ b/external/onlineupdate/install_updateservice.cxx
@@ -9,6 +9,7 @@
 
 #include 
 
+#include 
 #include 
 #include 
 #include 
@@ -51,18 +52,17 @@ extern "C" wchar_t* wcsncpy(wchar_t* strDest, wchar_t 
const* strSource, std::siz
 
 namespace
 {
-bool getInstallLocation(MSIHANDLE handle, std::wstring* installLocation)
+bool getProperty(MSIHANDLE handle, wchar_t const* name, std::wstring* value)
 {
 DWORD n = 0;
-if (MsiGetPropertyW(handle, L"INSTALLLOCATION", const_cast(L""), 
&n)
-!= ERROR_MORE_DATA
+if (MsiGetPropertyW(handle, name, const_cast(L""), &n) != 
ERROR_MORE_DATA
 || n == std::numeric_limits::max())
 {
 return false;
 }
 ++n;
 auto buf = std::make_unique(n);
-if (MsiGetPropertyW(handle, L"INSTALLLOCATION", buf.get(), &n) != 
ERROR_SUCCESS)
+if (MsiGetPropertyW(handle, name, buf.get(), &n) != ERROR_SUCCESS)
 {
 return false;
 }
@@ -70,7 +70,7 @@ bool getInstallLocation(MSIHANDLE handle, std::wstring* 
installLocation)
 {
 --n;
 }
-installLocation->assign(buf.get(), n);
+value->assign(buf.get(), n);
 return true;
 }
 
@@ -78,14 +78,20 @@ typedef std::unique_ptr 
CloseHandleGuard;
 
 CloseHandleGuard guard(HANDLE handle) { return CloseHandleGuard(handle, 
CloseHandle); }
 
-bool runExecutable(std::wstring const& installLocation, wchar_t const* 
commandLine)
+bool runExecutable(std::wstring const& installLocation, wchar_t const* 
argument)
 {
+std::wstring cmdline(L"\"");
+cmdline += installLocation;
+cmdline += L"\program\update_service.exe\" ";
+cmdline += argument;
+auto const n = cmdline.size() + 1;
+auto const buf = std::make_unique(n);
+std::copy_n(cmdline.data(), n, buf.get());
 STARTUPINFOW si{};
 si.cb = sizeof(si);
 PROCESS_INFORMATION pi{};
-if (!CreateProcessW((installLocation + 
L"\program\update_service.exe").c_str(),
-const_cast(commandLine), nullptr, nullptr, 
FALSE, CREATE_NO_WINDOW,
-nullptr, nullptr, &si, &pi))
+if (!CreateProcessW(nullptr, buf.get(), nullptr, nullptr, FALSE, 
CREATE_NO_WINDOW, nullptr,
+nullptr, &si, &pi))
 {
 return false;
 }
@@ -106,74 +112,114 @@ bool runExecutable(std::wstring const& installLocation, 
wchar_t const* commandLi
 }
 return true;
 }
-}
 
-extern "C" __declspec(dllexport) UINT __stdcall InstallUpdateservice(MSIHANDLE 
handle)
+bool writeRegistry(std::wstring const& installLocation)
 {
-std::wstring loc;
-if (!getInstallLocation(handle, &loc))
+WCHAR path[MAX_PATH + 1];
+if (!CalculateRegistryPathFromFilePath(installLocation.c_str(), path))
 {
 return false;
 }
-if (!runExecutable(loc, L"install"))
-{
-return ERROR_INVALID_FUNCTION;
-}
-WCHAR maintenanceServiceKey[MAX_PATH + 1];
-if (!CalculateRegistryPathFromFilePath(loc.c_str(), maintenanceServiceKey))
-{
-return ERROR_INVALID_FUNCTION;
-}
 HKEY key;
-if (RegCreateKeyExW(HKEY_LOCAL_MACHINE, 
(std::wstring(maintenanceServiceKey) + L"\0").c_str(),
-0, nullptr, REG_OPTION_NON_VOLATILE, KEY_WRITE | 
KEY_WOW64_64KEY, nullptr,
-&key, nullptr)
+if (RegCreateKeyExW(HKEY_LOCAL_MACHINE, (std::wstring(path) + 
L"\0").c_str(), 0, nullptr,
+REG_OPTION_NON_VOLATILE, KEY_WRITE | KEY_WOW64_64KEY, 
nullptr, &key,
+nullptr)
 != ERRO

core.git: Branch 'libreoffice-24-2' - officecfg/registry

2023-12-23 Thread Stéphane Guillou (via logerrit)
 officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 7b21b1f58a13af7f6bc4f053e0758a0331621618
Author: Stéphane Guillou 
AuthorDate: Wed Aug 30 00:58:26 2023 +0200
Commit: Ilmari Lauhakangas 
CommitDate: Sat Dec 23 11:07:51 2023 +0100

tdf#156719: use unique accelerator for Insert > Signature Line

Change-Id: Iebd03e3a526aef8db75a2323ec0faba8a3b24383
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156276
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas 
Reviewed-by: Ilmari Lauhakangas 
(cherry picked from commit 761449adb54e965c94d31c36e945112736b232c5)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161211

diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index 98332bbb434e..f4b6b8c3d7e5 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -7302,7 +7302,7 @@ bit 3 (0x8): #define 
UICOMMANDDESCRIPTION_PROPERTIES_TOGGLEBUTTON 8
   
   
 
-  Signatu~re Line...
+  Signat~ure Line...
 
 
   1


core.git: cui/source

2023-12-23 Thread Thorsten Behrens (via logerrit)
 cui/source/dialogs/QrCodeGenDialog.cxx |9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

New commits:
commit 14c4c077182f0338a21ae7dedf8620e339d2
Author: Thorsten Behrens 
AuthorDate: Fri Dec 22 15:22:19 2023 +0100
Commit: Thorsten Behrens 
CommitDate: Sat Dec 23 09:52:54 2023 +0100

ZXing: no need for deprecated utf-8 conversions anymore

With ZXing 2.0, the library directly supports utf8 std::string
parameters: https://github.com/zxing-cpp/zxing-cpp/releases/tag/v2.0.0

Fixes the warning:

 cui/source/dialogs/QrCodeGenDialog.cxx:161:72: warning: 'FromUtf8' is 
deprecated [-Wdeprecated-declarations]
  161 | ZXing::BitMatrix bitmatrix = 
writer.encode(ZXing::TextUtfEncoding::FromUtf8(QRText), 0, 0);
  | 
   ^
 /usr/include/ZXing/TextUtfEncoding.h:17:3: note: 'FromUtf8' has been 
explicitly marked deprecated here
   17 | [[deprecated]] std::wstring FromUtf8(std::string_view utf8);
  |   ^

Change-Id: Ic0a65d4455dabea1a7a4e23f558e4158a0c3f39f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161182
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/cui/source/dialogs/QrCodeGenDialog.cxx 
b/cui/source/dialogs/QrCodeGenDialog.cxx
index 8a25e3b364e7..c727f4cdbd02 100644
--- a/cui/source/dialogs/QrCodeGenDialog.cxx
+++ b/cui/source/dialogs/QrCodeGenDialog.cxx
@@ -19,6 +19,7 @@
 #include 
 
 #if ENABLE_ZXING
+#include 
 #include 
 
 #ifdef __GNUC__
@@ -38,9 +39,7 @@
 #include 
 #endif
 
-#if __has_include()
-#include 
-#else
+#if ZXING_VERSION_MAJOR < 2
 #include 
 #endif
 
@@ -153,8 +152,8 @@ OString GenerateQRCode(std::u16string_view aQRText, 
tools::Long aQRECC, int aQRB
 ZXing::BarcodeFormat format = 
ZXing::BarcodeFormatFromString(GetBarCodeType(aQRType));
 auto writer = 
ZXing::MultiFormatWriter(format).setMargin(aQRBorder).setEccLevel(bqrEcc);
 writer.setEncoding(ZXing::CharacterSet::UTF8);
-#if __has_include()
-ZXing::BitMatrix bitmatrix = writer.encode(ZXing::FromUtf8(QRText), 0, 0);
+#if ZXING_VERSION_MAJOR >= 2
+ZXing::BitMatrix bitmatrix = writer.encode(QRText, 0, 0);
 #else
 ZXing::BitMatrix bitmatrix = 
writer.encode(ZXing::TextUtfEncoding::FromUtf8(QRText), 0, 0);
 #endif


core.git: download.lst external/zxing

2023-12-23 Thread Taichi Haradaguchi (via logerrit)
 download.lst|4 -
 external/zxing/0001-add-ZXVersion-h.patch   |   21 +
 external/zxing/0001-android-Fix-build-with-NDK-26.patch |   64 
 external/zxing/README   |4 -
 external/zxing/StaticLibrary_zxing.mk   |6 -
 external/zxing/UnpackedTarball_zxing.mk |4 -
 6 files changed, 29 insertions(+), 74 deletions(-)

New commits:
commit 0ecedeea71d926f0aa3b2f121e6e896311e6250e
Author: Taichi Haradaguchi <20001...@ymail.ne.jp>
AuthorDate: Sat Dec 9 14:54:20 2023 +0900
Commit: Thorsten Behrens 
CommitDate: Sat Dec 23 09:52:25 2023 +0100

zxing-cpp: upgrade to release 2.2.1

* remove 0001-android-Fix-build-with-NDK-26.patch, which was merged 
upstream.
* remove DecodeHints from static lib, which according to upstream is not
  needed:
  https://github.com/zxing-cpp/zxing-cpp/issues/685#issuecomment-1853375179
* add a version header for client code
  generate/update via:
  * mkdir build && cd build && cmake ..
  * mv core/ZXVersion.h ../core/src/

Release Notes:
https://github.com/zxing-cpp/zxing-cpp/releases/tag/v2.2.1

Change-Id: Ic4811d4724970c984dd9ed3d59b5204c18aafc6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160528
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/download.lst b/download.lst
index 6191a35ab4bd..d381fca12ef6 100644
--- a/download.lst
+++ b/download.lst
@@ -655,8 +655,8 @@ ZXCVBN_C_TARBALL := zxcvbn-c-2.5.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-ZXING_SHA256SUM := 
6d54e403592ec7a143791c6526c1baafddf4c0897bb49b1af72b70a0f0c4a3fe
-ZXING_TARBALL := zxing-cpp-2.1.0.tar.gz
+ZXING_SHA256SUM := 
02078ae15f19f9d423a441f205b1d1bee32349ddda7467e2c84e8f08876f8635
+ZXING_TARBALL := zxing-cpp-2.2.1.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
diff --git a/external/zxing/0001-add-ZXVersion-h.patch 
b/external/zxing/0001-add-ZXVersion-h.patch
new file mode 100644
index ..88b779e2cfd7
--- /dev/null
+++ b/external/zxing/0001-add-ZXVersion-h.patch
@@ -0,0 +1,21 @@
+--- /dev/null  2023-12-10 14:00:18.140142051 +0100
 a/core/src/ZXVersion.h 2023-12-22 21:38:22.466302568 +0100
+@@ -0,0 +1,18 @@
++/*
++* Copyright 2019 Nu-book Inc.
++* Copyright 2023 Axel Waggershauser
++*/
++// SPDX-License-Identifier: Apache-2.0
++
++#pragma once
++
++// Version numbering
++#define ZXING_VERSION_MAJOR 2
++#define ZXING_VERSION_MINOR 2
++#define ZXING_VERSION_PATCH 1
++
++namespace ZXing {
++
++constexpr const char* ZXING_VERSION_STR = "2.2.1";
++
++}
diff --git a/external/zxing/0001-android-Fix-build-with-NDK-26.patch 
b/external/zxing/0001-android-Fix-build-with-NDK-26.patch
deleted file mode 100644
index ad1269b4165c..
--- a/external/zxing/0001-android-Fix-build-with-NDK-26.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 295b193b0105e68bb24747aefbff2653df892b4c Mon Sep 17 00:00:00 2001
-From: Michael Weghorn 
-Date: Mon, 27 Nov 2023 14:28:34 +0100
-Subject: [PATCH] android: Fix build with NDK 26
-
-While the workarounds added in
-
-commit df0b9213017a136bf7253ea1d4aba5677c52d45c
-Author: axxel 
-Date:   Thu Dec 15 20:43:48 2022 +0100
-
-android: work around limitations of c++-20 support in NDK
-
-may be necessary for NDK 25, they are no longer for NDK 26,
-and even break the build with NDK 26:
-
-C/C++: .../zxing-cpp/core/src/Generator.h:103:7: error: reference to 
'default_sentinel_t' is ambiguous
-C/C++: std::default_sentinel_t end() { return {}; }
-C/C++:  ^
-C/C++: 
.../Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__iterator/default_sentinel.h:23:8:
 note: candidate found by name lookup is 'std::__ndk1::default_sentinel_t'
-C/C++: struct default_sentinel_t { };
-C/C++:^
-C/C++: .../zxing-cpp/core/src/Generator.h:15:9: note: candidate found by 
name lookup is 'std::default_sentinel_t'
-C/C++: struct default_sentinel_t {};
-C/C++:^
-C/C++: 2 errors generated.
-
-Restrict the workaround to NDK version < 26 to fix this.
-
-Fixes: #673

- core/src/Generator.h | 8 ++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/core/src/Generator.h b/core/src/Generator.h
-index 7a1fd179..a5083e9d 100644
 a/core/src/Generator.h
-+++ b/core/src/Generator.h
-@@ -5,8 +5,12 @@
- 
- #pragma once
- 
--#ifdef __cpp_impl_coroutine
- #ifdef __ANDROID__
-+#include 
-+#endif
-+
-+#ifdef __cpp_impl_coroutine
-+#if defined __ANDROID__ && __NDK_MAJOR__ < 26
- // NDK 25.1.8937393 can compile this code with c++20 but needs a few tweaks:
- #include 
- namespace std {
-@@ -25,7 +29,7 @@ namespace std {
- // this code is based on 
https://en.cppreference.com/w/cpp/coroutine/coroutine_handle#Example
- // bu

core.git: sw/qa

2023-12-23 Thread U-DESKTOP-CETSUCAsigma (via logerrit)
 sw/qa/python/check_xnamedgraph.py |   17 -
 1 file changed, 17 deletions(-)

New commits:
commit 40a9dd85d10c642eed98cd50fbdd89f93b99ed8e
Author: U-DESKTOP-CETSUCA\sigma 
AuthorDate: Mon Nov 6 03:23:30 2023 -0500
Commit: Ilmari Lauhakangas 
CommitDate: Sat Dec 23 09:13:50 2023 +0100

sw: uitest: remove redundant function

Change-Id: I772771b7d455bae8be1dffed29fbc3605ea3e3fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158981
Tested-by: Ilmari Lauhakangas 
Reviewed-by: Ilmari Lauhakangas 

diff --git a/sw/qa/python/check_xnamedgraph.py 
b/sw/qa/python/check_xnamedgraph.py
index 84c774bddfa3..3ef7fdedbba0 100644
--- a/sw/qa/python/check_xnamedgraph.py
+++ b/sw/qa/python/check_xnamedgraph.py
@@ -58,23 +58,6 @@ class XNamedGraph(unittest.TestCase):
 
 xDMA.close(True)
 
-def test_Statements_RemoveByObject(self):
-# take any first graph
-xDMA = self._uno.openTemplateFromTDOC("XNamedGraph.ott")
-xGraph = self.getAnyGraph(xDMA)
-
-DATE_URI_STR = "http://www.example.com/Metadata#Version";
-OBJECT_STR = "foo"
-
-# remove by object
-self.assertFalse(self.hasStatement(xDMA, xGraph, DATE_URI_STR))
-self.addStatement(xDMA, xGraph, DATE_URI_STR, OBJECT_STR)
-self.assertTrue(self.hasStatement(xDMA, xGraph, DATE_URI_STR))
-self.removeStatement(xDMA, xGraph, None, OBJECT_STR)
-self.assertFalse(self.hasStatement(xDMA, xGraph, DATE_URI_STR))
-
-xDMA.close(True)
-
 def test_Statements_RemoveByObject(self):
 # take any first graph
 xDMA = self._uno.openTemplateFromTDOC("XNamedGraph.ott")


core.git: basic/qa basic/source

2023-12-23 Thread Jonathan Clark (via logerrit)
 basic/qa/basic_coverage/da-DK/test_ccur_da_DK_locale.bas |   27 
 basic/qa/basic_coverage/test_ccur_method.bas |   69 +-
 basic/qa/basic_coverage/zh-CN/test_ccur_zh_CN_locale.bas |   27 
 basic/source/sbx/sbxcurr.cxx |  100 ++-
 4 files changed, 162 insertions(+), 61 deletions(-)

New commits:
commit 9cc8457abcae57c7f9de6e0fbca1fbc2a0cc9892
Author: Jonathan Clark 
AuthorDate: Fri Dec 15 23:09:19 2023 -0700
Commit: Andreas Heinisch 
CommitDate: Sat Dec 23 09:12:24 2023 +0100

tdf#128122 Updated BASIC CCur to reuse SvNumberFormatter

Previously, BASIC CCur used a custom, single-purpose currency string
parser which did not properly accommodate the user's locale setting.
This change replaces the custom parser with SvNumberFormatter, which
does correctly respect system locale.

Change-Id: I179915eb080e876e5e550dd350fdb86d7fa2bf4c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160848
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch 

diff --git a/basic/qa/basic_coverage/da-DK/test_ccur_da_DK_locale.bas 
b/basic/qa/basic_coverage/da-DK/test_ccur_da_DK_locale.bas
new file mode 100644
index ..52b8d3b6f1aa
--- /dev/null
+++ b/basic/qa/basic_coverage/da-DK/test_ccur_da_DK_locale.bas
@@ -0,0 +1,27 @@
+'
+' This file is part of the LibreOffice project.
+'
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
+'
+
+Option Explicit
+
+Function doUnitTest as String
+TestUtil.TestInit
+verify_testCCurDaDKLocale
+doUnitTest = TestUtil.GetResult()
+End Function
+
+Sub verify_testCCurDaDKLocale
+On Error GoTo errorHandler
+
+' tdf#141050 - characteristic test for CCur() with the da_DK locale
+TestUtil.AssertEqual(CCur("75,50"), 75.5, "CCur(75,50)")
+TestUtil.AssertEqual(CCur("75,50 kr."), 75.5, "CCur(75,50 kr.)")
+
+Exit Sub
+errorHandler:
+TestUtil.ReportErrorHandler("verify_testCCurDaDKLocale", Err, Error$, Erl)
+End Sub
diff --git a/basic/qa/basic_coverage/test_ccur_method.bas 
b/basic/qa/basic_coverage/test_ccur_method.bas
index cd700cad3c8e..c42dcb938590 100644
--- a/basic/qa/basic_coverage/test_ccur_method.bas
+++ b/basic/qa/basic_coverage/test_ccur_method.bas
@@ -9,16 +9,73 @@
 Option Explicit
 
 Function doUnitTest as String
+TestUtil.TestInit
+verify_testCCur
+doUnitTest = TestUtil.GetResult()
+End Function
 
-doUnitTest = "FAIL"
+Sub verify_testCCur
+On Error GoTo errorHandler
 
 ' CCUR
-if (CCur("100") <> 100) Then Exit Function
+TestUtil.AssertEqual(CCur("100"), 100, "CCur(100)")
+
 ' tdf#141050 - passing a number with + sign
-if (CCur("+100") <> 100) Then Exit Function
+TestUtil.AssertEqual(CCur("+100"), 100, "CCur(100)")
 ' tdf#141050 - passing a number with - sign
-if (CCur("-100") <> -100) Then Exit Function
+TestUtil.AssertEqual(CCur("-100"), -100, "CCur(-100)")
 
-doUnitTest = "OK"
+' tdf#128122 - verify en_US locale currency format behavior
+TestUtil.AssertEqual(CCur("$100"), 100, "CCur($100)")
+TestUtil.AssertEqual(CCur("$1.50"), 1.5, "CCur($1.50)")
 
-End Function
+verify_testCCurUnderflow
+verify_testCCurOverflow
+verify_testCCurInvalidFormat
+
+Exit Sub
+errorHandler:
+TestUtil.ReportErrorHandler("verify_testCCur", Err, Error$, Erl)
+End Sub
+
+sub verify_testCCurUnderflow
+On Error GoTo underflowHandler
+
+' tdf$128122 - test underflow condition
+CCur("-9223372036854775809")
+TestUtil.Assert(False, "verify_testCCur", "underflow error not raised")
+
+Exit Sub
+underflowHandler:
+If(Err <> 6) Then
+TestUtil.Assert(False, "verify_testCCur", "underflow error incorrect 
type")
+Endif
+End Sub
+
+sub verify_testCCurOverflow
+On Error GoTo overflowHandler
+
+' tdf$128122 - test overflow condition
+CCur("9223372036854775808")
+TestUtil.Assert(False, "verify_testCCur", "overflow error not raised")
+
+Exit Sub
+overflowHandler:
+If(Err <> 6) Then
+TestUtil.Assert(False, "verify_testCCur", "overflow error incorrect 
type")
+Endif
+End Sub
+
+sub verify_testCCurInvalidFormat
+On Error GoTo invalidFormatHandler
+
+' tdf$128122 - test invalid format in en_US locale
+CCur("75,50 kr")
+TestUtil.Assert(False, "verify_testCCur", "invalid format error not 
raised")
+
+Exit Sub
+invalidFormatHandler:
+If(Err <> 13) Then
+TestUtil.Assert(False, "verify_testCCur", "invalid format error 
incorrect type")
+Endif
+End Sub
diff --git a/basic/qa/basic_coverage/zh-CN/test_ccur_zh_CN_locale.bas 
b/basic/qa/basic_coverage/zh-CN/test_ccur_zh_CN_locale.bas
new file mode 100644
index ..38a084e36c7f
--- /dev/null
+++ b/basic/qa/basic_coverage/zh-CN/test_ccur_zh_CN_locale.bas
@@ -0,0 +1,27 @@
+'
+' This file is