Commit Graph
13699 Commits
Author SHA1 Message Date
Vissarion Fisikopoulos 7389be9f2d tdf#42713: new dialogues for maintaning sql comments
When the query has comments and the user clicks the
"Edit..." button, a dialogue with message
"The query contains SQL comments.
If you edit it in Design View, the comments will be lost.
Continue anyway or start editing in SQL View?"
pops up. There are 3 choices "SQL View", "Continue", "Cancel";
the first opens SQL view, the second goes to design view and
the last cancels the dialogue.

Change-Id: I1ea59ff24243ab8e3aeb09282f3c32dcb9b167af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208198
Tested-by: Jenkins
Reviewed-by: Vissarion Fisikopoulos <vfisikop@libreoffice.org>
2026-07-20 12:21:26 +02:00
Michael Weghorn f1f6a505a0 weld: Pass weld::TextWidget& in text change callback/handler
Switch the weld::Entry and weld::TextView handlers
that are called when the text changes due to user
interaction to pass a weld::TextWidget& param
instead of a weld::Entry& and weld::TextView&
one respectively.
Adjust related methods across the code base accordingly.

This unifies the behavior for both of these
weld::TextWidget subclasses and prepares for
deduplicating the logic and moving it to the
common base class in an upcoming commit.

That will also ensure they stay in sync.
(Change also motivated by the fact that their behavior was
differing before

    Change-Id: I03d2a13cd84d53d806eb9e363f49c4b6be28d938
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Jul 9 13:08:58 2026 +0200

        tdf#130857 weld: Don't signal about programmatic TextView text change
.)

Change-Id: I5572fc88caf577fae9a23a39f1ec4f2179935a99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207936
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-10 18:17:27 +02:00
Michael Weghorn d93c67ef52 dbaccess: Use weld::Entry member directly in callback
Use OParameterDialog::m_xParam instead of the
callback param, as the callback is only connected
for that member.

This prepares for an upcoming commit that will
change the callback param to weld::TextWidget& to
unify/deduplicate the weld::Entry and weld::TextView
implementations.

Change-Id: I6b933e2ec844bf163ac93839452b1d71c541de73
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207932
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-10 18:16:48 +02:00
Michael Weghorn 262b018267 dbaccess: clang-format OParameterDialog source code
This in particular gets rid of an extra level of
indentation.

Change-Id: Ic0f35fbbadceacfacb5b47bbc8304216cfca04ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207931
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-10 18:16:39 +02:00
Dan Williams c595016047 Remove unused Reset buttons from various dialogs
These dialogs hide the standard Reset button that SfxTabDialogController
adds to dialogs. Instead of doing that, let's just not create a button
that has to be hidden in the first place.

Dialogs can be accessed via:

New Base doc -> Edit -> Database -> Advanced Settings...
New Base doc -> Tools -> User Administration...
New Base doc -> Edit -> Database -> Properties...
New <any> doc -> Export as... -> Export as PDF...
New Writer doc -> Insert -> Footnote and Endnote -> Footnote
  then right-click in the footnote area -> Footnote/Endnote Settings...

Change-Id: I06ed3ff8f70db9eb081e654d2f73deda480c3322
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207236
Reviewed-by: Dan Williams <dcbw@libreoffice.org>
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-10 13:32:14 +02:00
Vissarion Fisikopoulos ef11378a8d tdf#42713 maintain comments format
If the query has comments then maintain the format when saving
and warn the user when switching or start editing in design view
that the comments could be lost. The user will have the choice
to keep the formating as well as the placement of comments in
the query.

Change-Id: I3de2313f8808a0b1093ce38de3bc9aa775656067
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207198
Reviewed-by: Vissarion Fisikopoulos <vfisikop@libreoffice.org>
Tested-by: Jenkins
2026-06-29 11:37:14 +02:00
Michael Weghorn 35e2a8f8c6 tdf#130857 weld: Add default param for TreeView::enable_toggle_buttons
Most callers use weld::ColumnToggleType::Check
and only a few use weld::ColumnToggleType::Radio.

Add a default param of weld::ColumnToggleType::Check
and drop the explicit param for callers passing this.

This prepares for moving setting the toggle button
type to a separate method in an upcoming commit to
clarify what it actually does.
(It doesn't only set the toggle button type of the
special "expander toggle column" enabled by
weld::TreeView::enable_toggle_buttons, but of *all*
toggle buttons used in any of the cells of the
whole table.)

Change-Id: I65edb7cd5f79c59222c1c415f118b8adbdec0271
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207249
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-25 18:23:42 +02:00
Stephan Bergmann 60fdd8f4f8 Silence some more spurious -Werror=array-bounds=
seen at least with GCC 16 trunk and --enable-optimized,

> In file included from /usr/include/c++/16/bits/char_traits.h:59,
>                  from /usr/include/c++/16/ios:44,
>                  from /usr/include/c++/16/bits/ostream.h:43,
>                  from /usr/include/c++/16/ostream:42,
>                  from engine/include/rtl/ustring.hxx:30,
>                  from engine/include/vcl/ctrl.hxx:23,
>                  from engine/include/vcl/InterimItemWindow.hxx:13,
>                  from engine/include/svtools/scrolladaptor.hxx:24,
>                  from engine/dbaccess/source/ui/inc/JoinTableView.hxx:21,
>                  from engine/dbaccess/source/ui/inc/QueryTableView.hxx:21,
>                  from engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:20:
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = dbaui::OQueryTableWindowData; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<dbaui::OQueryTableConnectionData>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘void {anonymous}::addConnections(dbaui::OQueryTableView*, const dbaui::OQueryTableWindow&, const dbaui::OQueryTableWindow&, const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:174:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘dbaui::OQueryTableWindowData[0]’ is partly outside array bounds of ‘unsigned char [104]’ [-Werror=array-bounds=]
>    88 |         __location->~_Tp();
>       |         ~~~~~~~~~~~~~~~~^~
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
>                  from /usr/include/c++/16/bits/allocator.h:46,
>                  from /usr/include/c++/16/string:46,
>                  from /usr/include/c++/16/bits/locale_classes.h:43,
>                  from /usr/include/c++/16/bits/ios_base.h:43,
>                  from /usr/include/c++/16/ios:46:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Args = {const shared_ptr<dbaui::OTableWindowData>&, const shared_ptr<dbaui::OTableWindowData>&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘void {anonymous}::addConnections(dbaui::OQueryTableView*, const dbaui::OQueryTableWindow&, const dbaui::OQueryTableWindow&, const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:127:111:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 104 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = dbaui::OQueryTableWindowData; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<dbaui::OQueryTableConnectionData>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘virtual void dbaui::OQueryTableView::AddConnection(const dbaui::OJoinExchangeData&, const dbaui::OJoinExchangeData&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:558:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘dbaui::OQueryTableWindowData[0]’ is partly outside array bounds of ‘unsigned char [104]’ [-Werror=array-bounds=]
>    88 |         __location->~_Tp();
>       |         ~~~~~~~~~~~~~~~~^~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Args = {const shared_ptr<dbaui::OTableWindowData>&, const shared_ptr<dbaui::OTableWindowData>&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘virtual void dbaui::OQueryTableView::AddConnection(const dbaui::OJoinExchangeData&, const dbaui::OJoinExchangeData&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:539:121:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 104 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^

> In file included from /usr/include/c++/16/bits/stl_tempbuf.h:61,
>                  from /usr/include/c++/16/memory:68,
>                  from engine/include/dbaccess/dataview.hxx:22,
>                  from engine/reportdesign/source/ui/inc/DesignView.hxx:22,
>                  from engine/reportdesign/source/ui/inc/ReportController.hxx:22,
>                  from engine/reportdesign/source/ui/report/ReportController.cxx:20:
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = rptui::OGroupsSortingDialog]’,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = rptui::OGroupsSortingDialog]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = rptui::OGroupsSortingDialog]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = rptui::OGroupsSortingDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = rptui::AnyConverter; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<rptui::AnyConverter>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘const com::sun::star::uno::Reference<com::sun::star::sdbc::XRowSet>& rptui::OReportController::getRowSet()’ at engine/reportdesign/source/ui/report/ReportController.cxx:2983:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘rptui::OGroupsSortingDialog[0]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
>    88 |         __location->~_Tp();
>       |         ~~~~~~~~~~~~~~~~^~
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
>                  from /usr/include/c++/16/bits/allocator.h:46,
>                  from /usr/include/c++/16/memory:67:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<rptui::AnyConverter, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = rptui::AnyConverter; _Alloc = std::allocator<void>; _Args = {}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = rptui::AnyConverter; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = rptui::AnyConverter]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = rptui::AnyConverter; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘const com::sun::star::uno::Reference<com::sun::star::sdbc::XRowSet>& rptui::OReportController::getRowSet()’ at engine/reportdesign/source/ui/report/ReportController.cxx:2974:60:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 24 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^

> In file included from /usr/include/c++/16/bits/unordered_map.h:33,
>                  from /usr/include/c++/16/unordered_map:43,
>                  from /usr/include/c++/16/functional:80,
>                  from engine/include/rtl/ref.hxx:27,
>                  from engine/include/vcl/vclptr.hxx:26,
>                  from engine/sc/inc/document.hxx:25,
>                  from engine/sc/source/core/data/document10.cxx:11:
> In destructor ‘std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::~_Hashtable() [with _Key = short int; _Value = std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >; _Alloc = std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<short int>; _Hash = std::hash<short int>; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<false, false, true>]’,
>     inlined from ‘std::unordered_map<short int, std::unordered_map<short int, sc::ColumnBlockPosition> >::~unordered_map()’ at /usr/include/c++/16/bits/unordered_map.h:112:11,
>     inlined from ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’ at engine/sc/inc/mtvelements.hxx:179:7,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
>     inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:18:
> /usr/include/c++/16/bits/hashtable.h:1904:5: error: array subscript ‘std::_Hashtable<short int, std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >, std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >, std::__detail::_Select1st, std::equal_to<short int>, std::hash<short int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
>  1904 |     }
>       |     ^
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
>                  from /usr/include/c++/16/bits/allocator.h:46,
>                  from /usr/include/c++/16/memory:67,
>                  from engine/sc/source/core/data/document10.cxx:10:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&)’ at engine/sc/source/core/data/document10.cxx:556:64,
>     inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:82:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 24 into object of size 56 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^
> In file included from engine/sc/inc/column.hxx:28,
>                  from engine/sc/inc/table.hxx:25,
>                  from engine/sc/source/core/data/document10.cxx:14:
> In destructor ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
>     inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:18:
> engine/sc/inc/mtvelements.hxx:179:7: error: array subscript ‘sc::ColumnBlockPositionSet[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
>   179 | class ColumnBlockPositionSet
>       |       ^~~~~~~~~~~~~~~~~~~~~~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&)’ at engine/sc/source/core/data/document10.cxx:556:64,
>     inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:82:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^
> In destructor ‘std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::~_Hashtable() [with _Key = short int; _Value = std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >; _Alloc = std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<short int>; _Hash = std::hash<short int>; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<false, false, true>]’,
>     inlined from ‘std::unordered_map<short int, std::unordered_map<short int, sc::ColumnBlockPosition> >::~unordered_map()’ at /usr/include/c++/16/bits/unordered_map.h:112:11,
>     inlined from ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’ at engine/sc/inc/mtvelements.hxx:179:7,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
>     inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:18:
> /usr/include/c++/16/bits/hashtable.h:1904:5: error: array subscript ‘std::_Hashtable<short int, std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >, std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >, std::__detail::_Select1st, std::equal_to<short int>, std::hash<short int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
>  1904 |     }
>       |     ^
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&, const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:558:9,
>     inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:92:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 24 into object of size 56 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^
> In destructor ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
>     inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:18:
> engine/sc/inc/mtvelements.hxx:179:7: error: array subscript ‘sc::ColumnBlockPositionSet[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
>   179 | class ColumnBlockPositionSet
>       |       ^~~~~~~~~~~~~~~~~~~~~~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
>     inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
>     inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
>     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
>     inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
>     inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&, const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:558:9,
>     inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:92:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
>   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
>       |                                                                           ^

> In file included from engine/include/vcl/weld.hxx:13,
>                  from engine/include/sfx2/basedlgs.hxx:25,
>                  from engine/sw/source/uibase/inc/contentcontroldlg.hxx:21,
>                  from engine/sw/source/ui/misc/contentcontroldlg.cxx:20:
> In destructor ‘constexpr rtl::OUString::~OUString()’,
>     inlined from ‘constexpr SwContentControlListItem::~SwContentControlListItem()’ at engine/sw/inc/formatcontentcontrol.hxx:90:20,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/include/rtl/ustring.hxx:540:32: error: array subscript 3 is outside array bounds of ‘void [24]’ [-Werror=array-bounds=]
>   540 |             rtl_uString_release( pData );
>       |             ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
> In file included from /usr/include/c++/16/bits/shared_ptr.h:53,
>                  from /usr/include/c++/16/memory:82,
>                  from engine/include/sfx2/basedlgs.hxx:22:
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 24 into object of size 24 allocated by ‘operator new’
>   981 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
>       |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In destructor ‘constexpr rtl::OUString::~OUString()’,
>     inlined from ‘constexpr SwContentControlListItem::~SwContentControlListItem()’ at engine/sw/inc/formatcontentcontrol.hxx:90:20,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/include/rtl/ustring.hxx:541:5: error: array subscript 3 is outside array bounds of ‘void [24]’ [-Werror=array-bounds=]
>   541 |     }
>       |     ^
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 24 into object of size 24 allocated by ‘operator new’
>   981 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
>       |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from engine/sw/inc/txatbase.hxx:32,
>                  from engine/sw/inc/textcontentcontrol.hxx:21,
>                  from engine/sw/source/ui/misc/contentcontroldlg.cxx:29:
> In destructor ‘constexpr SwContentControlListItem::~SwContentControlListItem()’,
>     inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
>     inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
>     inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
>     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
>     inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
>     inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
>     inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/sw/inc/formatcontentcontrol.hxx:90:20: error: array subscript ‘SwContentControlListItem[1]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
>    90 | class SW_DLLPUBLIC SwContentControlListItem
>       |                    ^~~~~~~~~~~~~~~~~~~~~~~~
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
>     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
>     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
>     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
>     inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 16 into object of size 24 allocated by ‘operator new’
>   981 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
>       |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Change-Id: I59db4d41d745ac2bab8b0712fb2145a333fe5f42
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/1155
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
(cherry picked from commit 3e690ff02e2de8aeb052bf5a2d1f302134b907b1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207168
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-06-23 12:27:17 +02:00
Michael Weghorn a14a19a83c a11y: Drop unused AccessibleBrowseBox includes
Directly include the OAccessible header where the
code was previously depending on transitive includes.

Change-Id: I83750f8db6f843e9afc0a2b95bd7969667550992
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206727
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-19 18:11:22 +02:00
Xisco Fauli 6ac93e562a normalize some namespace declarations
Change-Id: I4cc17f852dd58d95e97cdc673d1f1ca0c6de6c03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206636
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-06-15 22:35:56 +02:00
Vissarion Fisikopoulos 67b51abd65 tdf#42713: maintain SQL comments in design view
When an SQL query has comments then those were deleted
when switching to design view. This is fixed and the comments
are maintained. In the case the query is edited in design
view then the comments are inevitably lost.

Change-Id: Ibcf6e36fce88a526c7340d352aca9859b1b3714e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205441
Tested-by: Jenkins
Reviewed-by: Vissarion Fisikopoulos <vfisikop@libreoffice.org>
2026-06-09 16:11:29 +02:00
Xisco Fauli f1c0f94229 msvc: remove obsolete warning suppressors
Change-Id: I4128ab5ac0494d515d84d8208bf8d8065d2359c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206014
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-06-05 08:44:23 +02:00
Michael Weghorn f26084217a weld: Move weld::Button to own header/Rename weld.hxx
In the past, weld.hxx used to contain the class
definitions for weld::Widget and all subclasses.

By now, weld::Widget and almost all subclasses have
been moved to separate headers, to make it easier
to keep the overview and to avoid having to
recompile ~all UI code when one class changes.

By now, only weld::Button is left in weld.hxx.
Rename the header to Button.hxx.
Drop weld.hxx includes and instead add Button.hxx
includes (or weld::Button forward declarations) where
weld::Button is used.
(Don't simply replace all weld.hxx includes with
Button.hxx ones, since many of them were for the
use of other widgets that have since been moved
to their own headers.)

Add further includes where needed now that the
(direct or transitive) includes of weld.hxx were removed.

Change-Id: I8ea6201446a418d5e38b46337059dcd517ee29d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205937
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-05 07:58:07 +02:00
Michael Weghorn 8b5a46a0e0 weld: Move weld::toId and weld::fromId to weldutils.hxx
In the past, weld.hxx used to contain the class
definitions for weld::Widget and all subclasses,
as well as a few helpers.

By now, weld::Widget and almost all subclasses have
been moved to separate headers, to make it easier
to keep the overview and to avoid having to
recompile ~all UI code when anything in weld.hxx
changes.

Move the weld::toId and weld::fromId helpers from
weld.hxx to weldutils.hxx, in preparation of getting
rid of weld.hxx altogether in an upcomcing commit.

Change-Id: I408fe20a74ff104cbfe07bde3105317a1922ff61
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205936
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-04 14:37:13 +02:00
Michael Weghorn 8f7cf9c32c weld: Move weld::CheckButton to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Add missing includes/forward declarations in places
previously depending on transitive includes that
are now dropped.

Change-Id: I3215b358e0fa45ffce08756218c386e1a4d7ebc6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205928
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-04 08:39:19 +02:00
Michael Weghorn ba7331747f weld: Drop not directly used includes/fwd-decls from weld.hxx
These are not needed inside weld.hxx itself. Instead
add the required includes/forward-declarations to those
files actually needing them, instead of relying on the
now dropped ones.

Change-Id: I5e4cea030867d14057b2bdcc2a2a4cd98843651d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205906
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-04 05:57:14 +02:00
Michael Weghorn 8d9ae67bdf dbaccess: Drop unused 'using namespace'
Change-Id: Ibcfb8bb6a9149723bb6f96c77c91ea963b148ac7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205905
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-03 23:20:10 +02:00
Michael Weghorn da1c7a5459 weld: Move weld::RadioButton to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I34876c5bef75e30e758029b0fe5afeecc92d509d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205903
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-03 23:19:54 +02:00
Michael Weghorn 911a89ddeb weld: Move weld::WaitObject to own header/source
Move the class out of weld.hxx into its own header and
source file, in order to make it easier to keep an overview
and to avoid having to recompile ~all UI code when the class
is modified.

Change-Id: I91bae842e5b18a83db45de12150c21f75e537fb9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205900
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-03 23:19:30 +02:00
Michael Weghorn 243bb112ec weld: Move weld::Container to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Adjust includes in files that were implicitly depending
on transitive includes that are no longer present because
the more specific include/weld/Container.hxx is included
further down now instead of include/weld/weld.hxx.

Change-Id: I04e6bb72ce446b746dfdf88b45c7df9d0ccda473
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205899
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-03 23:19:22 +02:00
Michael Weghorn 336f70f966 weld: Move weld::Label to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: Ide86f35543468a88288a068cc9f89eaf381ac52f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205763
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-05-27 22:24:37 +02:00
Mike Kaganski 315349828a Fix --enable-werror gcc build on Linux
Commit 8ed30e4a243a3efdfe380852d20910bc4a02e181 (Move ToolboxController
to use OPropertyContainerImplHelper, 2026-04-10) introduced cases similar
to the problem handled in commit 3917b082b9f4530d305cd947ab47658f6883c4f1
(Fix --enable-werror gcc build on Linux, 2026-04-09).

In file included from /home/mk/core/framework/inc/uielement/complextoolbarcontroller.hxx:28,
                 from /home/mk/core/framework/inc/uielement/comboboxtoolbarcontroller.hxx:24,
                 from /home/mk/core/framework/source/uielement/comboboxtoolbarcontroller.cxx:20:
/home/mk/core/include/svtools/toolboxcontroller.hxx:86:31: error: ‘virtual void svt::ToolboxController::disposing(const com::sun::star::lang::EventObject&)’ was hidden [-Werror=overloaded-virtual=]
   86 |         virtual void SAL_CALL disposing( const css::lang::EventObject& Source ) override;
      |                               ^~~~~~~~~
/home/mk/core/framework/inc/uielement/comboboxtoolbarcontroller.hxx:44:22: note:   by ‘virtual void framework::ComboboxToolbarController::disposing(std::unique_lock<std::mutex>&)’
   44 |         virtual void disposing(std::unique_lock<std::mutex>& rGuard) override;
      |                      ^~~~~~~~~

Change-Id: Ic41be4d39b032864c3427d17a85502e36f31dce9
Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/757
Reviewed-by: Justin Luth <justin.luth@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit e95308f8dc2e5c1088686eaa1552126eea9745d0)
(cherry picked from commit d6a555ec61272006e801764dd46a493bbbf3e90a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205689
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-05-26 00:41:16 +02:00
Mike Kaganski bce4bc55f9 Move ToolboxController to use OPropertyContainerImplHelper
Quite a large inheritance chain, which all needed replace dispose
with disposing, and make sure the locking is correct.

Introduce comphelper::unique_unlock, RAII class for scoped release
of std::unique_lock, to help ensure the invariant established in
commit 4fc1ab0ca8d9bb0f0b8344d0537882aab1d6d2c0 (add assert to keep
WeakComponentImplHelperBase::disposing callees honest, 2026-04-04).

Change-Id: I72c98c25c01b8042428ef2376c6aba3c6b15ec87
Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/248
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 8ed30e4a243a3efdfe380852d20910bc4a02e181)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205688
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-05-26 00:41:07 +02:00
JanayeJackson caf583e1a3 tdf#157664 Drop operator != where respective == is defined
Change-Id: Ib958689984c20c4f28e078e056c752cb4deb5cf2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205507
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2026-05-25 20:13:05 +02:00
Michael Weghorn 1a3d6d5cdf weld: Move weld::Frame to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: Ia7bc570fcd463d9adcbcdad070250cec5bc3b949
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205488
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-05-22 21:56:45 +02:00
Michael Weghorn b2ce99c623 weld: Move weld::Image to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I2eb564b2483b052f01d4af55fd4feb00b5ed6031
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205472
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-05-22 21:55:53 +02:00
Michael Weghorn 3f1fb9d4b0 weld: Move weld::Window to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: If7cb4403f1861c465f44a1cae4065b0bf8dfad48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205323
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-05-19 09:10:43 +02:00
Michael Weghorn b0b90ec05c svtools: Convert EditBrowseBox::RowStatus to enum class
Also drop the explicit int values, as they are irrelevant.

Change-Id: I407ffe3c6a3c6d8e2f05ce57434da32db75acc5d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204452
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-28 15:53:38 +02:00
Michael Weghorn 1364f3246c dbaccess: Drop ORelationControl_Base typedef
It's just an alias for svt::EditBrowseBox.
Use the latter directly instead.

Change-Id: Iffe957e35b5763564e040313bb37383c06ad6bbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204450
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-04-28 15:53:19 +02:00
Michael Weghorn 2f9b26c31c svt: Return more specific subclass in EditBrowseBox::imp_CreateHeaderBar
The return value is always a EditBrowserHeader
or subclass, so return that more specific type
instead of only the BrowserHeader base class.

Change-Id: Ifa01f640d9909063e9609e1106d832d0a96872a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204448
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-04-28 15:53:03 +02:00
Michael Weghorn 6ea49cb1bd weld: Pass col index in TreeView::signal_editing_done
In addition to the weld::TreeIter and the new text,
also pass the column index of the cell that was edited
in the callback that gets called when a cell was edited.

This will allow callbacks to take that into account as
well when deciding whether to accept or reject the
editor operation.

One case that will make use of this in an upcoming
commit is Math's MatrixCreatorDialog, which currently
implements its own logic based on mouse clicks to
(try to) identify the column that is edited.
That is relatively complicated and won't work in the
case of keyboard-only interaction.

For the vcl implementation, this makes use of the
SvLBoxItem available in the callback since

    Change-Id: Iad2866d8fcc710d82f4f0dc0661a3b1f0bebaeab
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Fri Apr 24 13:17:15 2026 +0200

        vcl: Also pass the item in treeview callback when entry edited

to retrieve the column index of the modified
item/cell.

For GTK, GtkInstanceTreeView::signal_cell_toggled
already contains similar logic.

For Qt, the column index is available via the
QModelIndex.

Change-Id: I36fa296d72ef2ff853da03037151cc060634d2a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204305
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-04-26 18:09:35 +02:00
Michael Weghorn 675d216886 Use existing weld::TreeView::iter_string typedef
Use the existing typedef instead of having multiple
versions that are all the same.

Change-Id: I7bc99a641ce5e7aa8237968b8b88fa4835917cd8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204288
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-26 18:07:59 +02:00
Rafał Dobrakowski 5fab2d8f24 tdf#170269 Use std::ranges::any_of to simplify loops
in indexdialog.cxx and paramdialog.cxx

Change-Id: I440ea336e107ea7b1f7199c4d2437ce447f3d6fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203418
Tested-by: Jenkins
Reviewed-by: David Gilbert <freedesktop@treblig.org>
2026-04-26 16:58:57 +02:00
Michael Weghorn 03d5d803c4 weld: Switch TreeView selection changed signal param to ItemView
Switch the param for the signal and handlers used when
the selection in a weld::TreeView changes from weld::TreeView&
to the base class, weld::ItemView&.

This is in preparation of moving the logic to the weld::ItemView
base class in an upcoming commit.

Handler implementations that require a weld::TreeView
instance can use the one that the signal is connected
to, e.g. use the class member directly inside of the
implementation instead of using the param (as is done
in most of the places anyway).

Change-Id: I0bbf8fe1dbd95906a5224155d48d832bcd144532
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203366
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-10 06:36:08 +02:00
Michael Weghorn 8ff8ad952e weld: Rename row activation related TreeView members to match IconView
Rename methods and field related to signalling activation
of a weld::TreeView row to use the same names as the equivalent
ones for signalling activation of an entry in weld::IconView:

* weld::TreeView::m_aRowActivatedHdl -> weld::TreeView::m_aItemActivatedHdl
* weld::TreeView::signal_row_activated -> weld::TreeView::signal_item_activated
* weld::TreeView::connect_row_activated -> weld::TreeView::connect_item_activated

This is in preparation of deduplicating the weld::TreeView
and weld::IconView implementations for these by moving them
to the common weld::ItemView base class in an upcoming commit.

Change-Id: I4ca4dec1295c57cea574b68fd41b89c12144c4f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203350
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-10 06:29:43 +02:00
Michael Weghorn 11789e47ac weld: Pass activated row in TreeView::signal_row_activated
This is basically the weld::TreeView version of earlier
commit

        Change-Id: I8ca62ac32108f01e2055d5ef9301de22eb5b1931
        Author: Michael Weghorn <m.weghorn@posteo.de>
        Date:   Wed Apr 8 12:35:25 2026 +0200

            weld: Pass activated item in IconView::signal_item_activated

applying an equivalent change for weld::IconView instead
of weld::TreeView. See that commit for more details/background.

For weld::TreeView, the weld::TreeIter refers to
a full row (and columns are handled separately
by a column index in the weld::TreeView API).

As for the above commit:
Initially, leave the logic of the existing signal handlers/callbackes
(in dialog implementations) unchanged. At least some of them
will be simplified in upcoming commits to use the
newly passed weld::TreeIter param directly instead of
determining the current/activated row a different
way.

Change-Id: Ie6a962702d4f7f069b2f7b77a22a78722b2a6408
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203331
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-09 10:21:45 +02:00
Michael Weghorn 3a9e93563b dbaccess: Extract OAddTableDlg::Add helper not requiring widget
OAddTableDlg::AddClickHdl passes a widget to
OAddTableDlg::TableListDoubleClickHdl but that param
is actually unused. Extract a helper method
OAddTableDlg::Add that doesn't require a widget param
and use that one instead.

This also prepares for adjusting weld::TreeView::m_aRowActivatedHdl
to pass the weld::TreeIter of the activated entry instead of just the
weld::TreeView itself.

Change-Id: Id3c38b0633dc8d3efc1faadcc4ad79c91cf84318
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203320
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-09 10:20:21 +02:00
Michael Weghorn 5f7a27917d weld: Move TreeIter to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: Id2c40f0fa57a18b797079bf2a1aa8b6f03c77f44
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203314
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-09 10:19:08 +02:00
Michael Weghorn fdcd1880cb dbaccess: Use ODatasourceSelectDialog member instead of TreeView param in hdl
Use ODatasourceSelectDialog::m_xDatasource  directly instead of
the weld::TreeView& param passed to the handler.
That is the weld::TreeView that the handler is connected to.

This also prepares for adjusting weld::TreeView::m_aRowActivatedHdl
to pass the weld::TreeIter of the activated entry instead of just the
weld::TreeView itself.

Change-Id: If190e3f54a96e90c6669275d67d9158a587b7b74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203299
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-04-09 10:17:49 +02:00
Michael Weghorn e692cd7df7 dbaccess: Use OTasksWindow member instead of TreeView param in hdl
Use OTasksWindow::m_xTreeView  directly instead of
the weld::TreeView& param passed to the handler.
That is the weld::TreeView that the handler is connected to.

This also prepares for adjusting weld::TreeView::m_aRowActivatedHdl
to pass the weld::TreeIter of the activated entry instead of just the
weld::TreeView itself.

Change-Id: I2acbec9df32a36199d41a4b3f8621a1fcfc91bd5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203298
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-04-09 10:17:42 +02:00
Michael Weghorn ce56a263a5 tdf#130857 dbaccess: Don't define tab pages in .ui file
As has been done almost everywhere else already, switch
from defining (skeleton) tab pages in the .ui file for the
database "Advanced Settings" dialog and adding the actual
content only later.

Instead, completely have the logic to add them (including
the tab label to use) in C++ code, as is done elsewhere.

This prevents the situation where trying to remove
the tab page that was defined in the UI file but
isn't known to the SfxTabDialogController yet
would result in an assert getting triggered when using
the qt6 VCL plugin with SAL_VCL_QT_USE_WELDED_WIDGETS=1
when triggering the dialog for a case where the
"Generated Values" tab page isn't meant to be shown.

Seen with upcoming commit

    Change-Id: I2eab17ed0aff12aa3c650f35c8a1b7d737091842
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Mar 9 21:00:01 2026 +0100

        tdf#130857 qt weld: Support DB "Advanced Settings" dialog

(See the commit message of that commit for more details,
but don't apply the extra local change mentioned in there
so that the "Generated Values" tab page will not be added.)

Backtrace how the

    assert(!m_pImpl->aData.empty() && "no Pages registered");

at the beginning of SfxTabDialogController::DeactivatePage
would be triggered otherwise:

    Thread 1 received signal SIGABRT, Aborted.
    __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
    ⚠ warning: 44  ./nptl/pthread_kill.c: No such file or directory
    (rr) bt
    #0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
    #1  0x00007f0bdc8a147f in __pthread_kill_internal (threadid=<optimized out>, signo=6) at ./nptl/pthread_kill.c:89
    #2  0x00007f0bdc84a942 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
    #3  0x00007f0bdc8324ac in __GI_abort () at ./stdlib/abort.c:77
    #4  0x00007f0bdc832420 in __assert_fail_base (fmt=<optimized out>, assertion=<optimized out>, file=<optimized out>, line=<optimized out>, function=0x7f0bd847b283 "bool SfxTabDialogController::DeactivatePage(std::u16string_view)")
        at ./assert/assert.c:118
    #5  0x00007f0bd8bc655d in SfxTabDialogController::DeactivatePage (this=0x55f6d18af070, aPage=u"generated") at /home/michi/development/git/libreoffice/sfx2/source/dialog/tabdlg.cxx:372
    #6  0x00007f0bd8bc64aa in SfxTabDialogController::DeactivatePageHdl (this=0x55f6d18af070, rPage="generated") at /home/michi/development/git/libreoffice/sfx2/source/dialog/tabdlg.cxx:358
    #7  0x00007f0bd8bc474d in SfxTabDialogController::LinkStubDeactivatePageHdl (instance=0x55f6d18af070, data="generated") at /home/michi/development/git/libreoffice/sfx2/source/dialog/tabdlg.cxx:356
    #8  0x00007f0bca4f6ee6 in Link<rtl::OUString const&, bool>::Call (this=0x55f6d18aebd8, data="generated") at include/tools/link.hxx:105
    #9  0x00007f0bca4f135e in QtInstanceNotebook::currentTabChanged (this=0x55f6d18ae9e0) at vcl/qt6/../qt5/QtInstanceNotebook.cxx:191
    #10 0x00007f0bca4f7a91 in QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtInstanceNotebook::*)()>::call(void (QtInstanceNotebook::*)(), QtInstanceNotebook*, void**)::{lambda()#1}::operator()() const (this=0x7ffecd74f740) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:128
    #11 0x00007f0bca4f79c9 in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtInstanceNotebook::*)()>::call(void (QtInstanceNotebook::*)(), QtInstanceNotebook*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtInstanceNotebook::*)()>::call(void (QtInstanceNotebook::*)(), QtInstanceNotebook*, void**)::{lambda()#1}&&) (args=0x7ffecd74fb20, fn=...) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:66
    #12 0x00007f0bca4f78fb in QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtInstanceNotebook::*)()>::call(void (QtInstanceNotebook::*)(), QtInstanceNotebook*, void**)
        (f=(void (QtInstanceNotebook::*)(class QtInstanceNotebook * const)) 0x7f0bca4f1300 <QtInstanceNotebook::currentTabChanged()>, o=0x55f6d18ae9e0, arg=0x7ffecd74fb20)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:127
    #13 0x00007f0bca4f787d in QtPrivate::FunctionPointer<void (QtInstanceNotebook::*)()>::call<QtPrivate::List<>, void>(void (QtInstanceNotebook::*)(), QtInstanceNotebook*, void**)
        (f=(void (QtInstanceNotebook::*)(class QtInstanceNotebook * const)) 0x7f0bca4f1300 <QtInstanceNotebook::currentTabChanged()>, o=0x55f6d18ae9e0, arg=0x7ffecd74fb20)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:175
    #14 0x00007f0bca4f77a6 in QtPrivate::QCallableObject<void (QtInstanceNotebook::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*)
        (which=1, this_=0x55f6d1899530, r=0x55f6d18ae9e0, a=0x7ffecd74fb20, ret=0x0) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:546
    #15 0x00007f0bc92e95f2 in QtPrivate::QSlotObjectBase::call (this=0x55f6d1899530, r=0x55f6d18ae9e0, a=0x7ffecd74fb20) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:462
    #16 0x00007f0bc951c112 in doActivate<false> (sender=0x55f6d1e562e0, signal_index=7, argv=0x7ffecd74fb20) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4372
    #17 0x00007f0bc95124b3 in QMetaObject::activate (sender=0x55f6d1e562e0, m=0x7f0bc7f7bcb0 <QTabWidget::staticMetaObject>, local_signal_index=0, argv=0x7ffecd74fb20)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4432
    #18 0x00007f0bc73a69fb in QMetaObject::activate<void, int> (sender=0x55f6d1e562e0, mo=0x7f0bc7f7bcb0 <QTabWidget::staticMetaObject>, local_signal_index=0, ret=0x0, args=@0x7ffecd74fb64: 0) at qtbase/src/corelib/kernel/qobjectdefs.h:320
    #19 0x00007f0bc77fde78 in QTabWidget::currentChanged (this=0x55f6d1e562e0, _t1=0) at qtbase/src/widgets/Widgets_autogen/include/moc_qtabwidget.cpp:263
    #20 0x00007f0bc77fdc4b in QTabWidgetPrivate::showTab (this=0x55f6d1889c50, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qtabwidget.cpp:761
    #21 0x00007f0bc780118a in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}::operator()() const (this=0x7ffecd74fc30) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:128
    #22 0x00007f0bc7800ffd in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}&&) (args=0x7ffecd750030, fn=...) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:66
    #23 0x00007f0bc7800f87 in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call
        (f=(void (QTabWidgetPrivate::*)(class QTabWidgetPrivate * const, int)) 0x7f0bc77fdbe0 <QTabWidgetPrivate::showTab(int)>, o=0x55f6d1889c50, arg=0x7ffecd750030) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:127
    #24 0x00007f0bc7800ef1 in QtPrivate::FunctionPointer<void (QTabWidgetPrivate::*)(int)>::call<QtPrivate::List<int>, void>
        (f=(void (QTabWidgetPrivate::*)(class QTabWidgetPrivate * const, int)) 0x7f0bc77fdbe0 <QTabWidgetPrivate::showTab(int)>, o=0x55f6d1889c50, arg=0x7ffecd750030) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:175
    #25 0x00007f0bc7800e20 in QtPrivate::QPrivateSlotObject<void (QTabWidgetPrivate::*)(int), QtPrivate::List<int>, void>::impl (which=1, this_=0x55f6d1d6ecb0, r=0x55f6d1e562e0, a=0x7ffecd750030, ret=0x0)
        at qtbase/src/corelib/kernel/qobject_p.h:273
    #26 0x00007f0bc92e95f2 in QtPrivate::QSlotObjectBase::call (this=0x55f6d1d6ecb0, r=0x55f6d1e562e0, a=0x7ffecd750030) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:462
    #27 0x00007f0bc951c112 in doActivate<false> (sender=0x55f6d0aa9aa0, signal_index=7, argv=0x7ffecd750030) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4372
    #28 0x00007f0bc95124b3 in QMetaObject::activate (sender=0x55f6d0aa9aa0, m=0x7f0bc7f7a098 <QTabBar::staticMetaObject>, local_signal_index=0, argv=0x7ffecd750030)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4432
    #29 0x00007f0bc73a69fb in QMetaObject::activate<void, int> (sender=0x55f6d0aa9aa0, mo=0x7f0bc7f7a098 <QTabBar::staticMetaObject>, local_signal_index=0, ret=0x0, args=@0x7ffecd750074: 0) at qtbase/src/corelib/kernel/qobjectdefs.h:320
    #30 0x00007f0bc77c3308 in QTabBar::currentChanged (this=0x55f6d0aa9aa0, _t1=0) at qtbase/src/widgets/Widgets_autogen/include/moc_qtabbar.cpp:269
    #31 0x00007f0bc77c27af in QTabBar::setCurrentIndex (this=0x55f6d0aa9aa0, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qtabbar.cpp:1469
    #32 0x00007f0bc77c2f07 in QTabBar::removeTab (this=0x55f6d0aa9aa0, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qtabbar.cpp:1096
    #33 0x00007f0bc77fc3ea in QTabWidgetPrivate::removeTab (this=0x55f6d1889c50, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qtabwidget.cpp:767
    #34 0x00007f0bc780118a in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}::operator()() const (this=0x7ffecd7502b0) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:128
    #35 0x00007f0bc7800ffd in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call(void (QTabWidgetPrivate::*)(int), QTabWidgetPrivate*, void**)::{lambda()#1}&&) (args=0x7ffecd7506b0, fn=...) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:66
    #36 0x00007f0bc7800f87 in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QTabWidgetPrivate::*)(int)>::call
        (f=(void (QTabWidgetPrivate::*)(class QTabWidgetPrivate * const, int)) 0x7f0bc77fc3b0 <QTabWidgetPrivate::removeTab(int)>, o=0x55f6d1889c50, arg=0x7ffecd7506b0) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:127
    #37 0x00007f0bc7800ef1 in QtPrivate::FunctionPointer<void (QTabWidgetPrivate::*)(int)>::call<QtPrivate::List<int>, void>
        (f=(void (QTabWidgetPrivate::*)(class QTabWidgetPrivate * const, int)) 0x7f0bc77fc3b0 <QTabWidgetPrivate::removeTab(int)>, o=0x55f6d1889c50, arg=0x7ffecd7506b0) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:175
    #38 0x00007f0bc7800e20 in QtPrivate::QPrivateSlotObject<void (QTabWidgetPrivate::*)(int), QtPrivate::List<int>, void>::impl (which=1, this_=0x55f6d1d73e10, r=0x55f6d1e562e0, a=0x7ffecd7506b0, ret=0x0)
        at qtbase/src/corelib/kernel/qobject_p.h:273
    #39 0x00007f0bc92e95f2 in QtPrivate::QSlotObjectBase::call (this=0x55f6d1d73e10, r=0x55f6d1e562e0, a=0x7ffecd7506b0) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:462
    #40 0x00007f0bc951c112 in doActivate<false> (sender=0x55f6d1e56310, signal_index=8, argv=0x7ffecd7506b0) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4372
    #41 0x00007f0bc95124b3 in QMetaObject::activate (sender=0x55f6d1e56310, m=0x7f0bc7f796e0 <QStackedWidget::staticMetaObject>, local_signal_index=1, argv=0x7ffecd7506b0)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4432
    #42 0x00007f0bc73a69fb in QMetaObject::activate<void, int> (sender=0x55f6d1e56310, mo=0x7f0bc7f796e0 <QStackedWidget::staticMetaObject>, local_signal_index=1, ret=0x0, args=@0x7ffecd7506f4: 0)
        at qtbase/src/corelib/kernel/qobjectdefs.h:320
    #43 0x00007f0bc77b6c5d in QStackedWidget::widgetRemoved (this=0x55f6d1e56310, _t1=0) at qtbase/src/widgets/Widgets_autogen/include/moc_qstackedwidget.cpp:194
    #44 0x00007f0bc77b7dda in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QStackedWidget::*)(int)>::call(void (QStackedWidget::*)(int), QStackedWidget*, void**)::{lambda()#1}::operator()() const (this=0x7ffecd750780) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:128
    #45 0x00007f0bc77b7ced in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QStackedWidget::*)(int)>::call(void (QStackedWidget::*)(int), QStackedWidget*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QStackedWidget::*)(int)>::call(void (QStackedWidget::*)(int), QStackedWidget*, void**)::{lambda()#1}&&) (args=0x7ffecd750b70, fn=...) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:66
    #46 0x00007f0bc77b7c07 in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<int>, void, void (QStackedWidget::*)(int)>::call
        (f=(void (QStackedWidget::*)(class QStackedWidget * const, int)) 0x7f0bc77b6c20 <QStackedWidget::widgetRemoved(int)>, o=0x55f6d1e56310, arg=0x7ffecd750b70) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:127
    #47 0x00007f0bc77b7b71 in QtPrivate::FunctionPointer<void (QStackedWidget::*)(int)>::call<QtPrivate::List<int>, void>
        (f=(void (QStackedWidget::*)(class QStackedWidget * const, int)) 0x7f0bc77b6c20 <QStackedWidget::widgetRemoved(int)>, o=0x55f6d1e56310, arg=0x7ffecd750b70) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:175
    #48 0x00007f0bc77b7a9b in QtPrivate::QCallableObject<void (QStackedWidget::*)(int), QtPrivate::List<int>, void>::impl (which=1, this_=0x55f6d18a6a70, r=0x55f6d1e56310, a=0x7ffecd750b70, ret=0x0)
        at qtbase/src/corelib/kernel/qobjectdefs_impl.h:546
    #49 0x00007f0bc92e95f2 in QtPrivate::QSlotObjectBase::call (this=0x55f6d18a6a70, r=0x55f6d1e56310, a=0x7ffecd750b70) at qtbase/src/corelib/kernel/qobjectdefs_impl.h:462
    #50 0x00007f0bc951c112 in doActivate<false> (sender=0x55f6d1d94df0, signal_index=3, argv=0x7ffecd750b70) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4372
    #51 0x00007f0bc95124b3 in QMetaObject::activate (sender=0x55f6d1d94df0, m=0x7f0bc7f64618 <QStackedLayout::staticMetaObject>, local_signal_index=0, argv=0x7ffecd750b70)
        at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qobject.cpp:4432
    #52 0x00007f0bc73a69fb in QMetaObject::activate<void, int> (sender=0x55f6d1d94df0, mo=0x7f0bc7f64618 <QStackedLayout::staticMetaObject>, local_signal_index=0, ret=0x0, args=@0x7ffecd750bb4: 0)
        at qtbase/src/corelib/kernel/qobjectdefs.h:320
    #53 0x00007f0bc7445098 in QStackedLayout::widgetRemoved (this=0x55f6d1d94df0, _t1=0) at qtbase/src/widgets/Widgets_autogen/include/moc_qstackedlayout.cpp:185
    #54 0x00007f0bc7444faf in QStackedLayout::takeAt (this=0x55f6d1d94df0, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/kernel/qstackedlayout.cpp:261
    #55 0x00007f0bc743414c in QLayout::removeWidget (this=0x55f6d1d94df0, widget=0x55f6cfb71cb0) at /home/michi/development/git/qt5/qtbase/src/widgets/kernel/qlayout.cpp:1479
    #56 0x00007f0bc77b6e8d in QStackedWidget::removeWidget (this=0x55f6d1e56310, widget=0x55f6cfb71cb0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qstackedwidget.cpp:177
    #57 0x00007f0bc77fda72 in QTabWidget::removeTab (this=0x55f6d1e562e0, index=0) at /home/michi/development/git/qt5/qtbase/src/widgets/widgets/qtabwidget.cpp:632
    #58 0x00007f0bca4f4a63 in QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0::operator()() const (this=0x7ffecd750e60) at vcl/qt6/../qt5/QtInstanceNotebook.cxx:104
    #59 0x00007f0bca4f4a25 in std::__invoke_impl<void, QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0&>(std::__invoke_other, QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0&) (__f=...)
        at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/invoke.h:63
    #60 0x00007f0bca4f49d5 in std::__invoke_r<void, QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0&>(QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0&) (__fn=...)
        at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/invoke.h:113
    #61 0x00007f0bca4f48ed in std::_Function_handler<void(), QtInstanceNotebook::remove_page(rtl::OUString const&)::$_0>::_M_invoke (__functor=...) at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/std_function.h:292
    #62 0x00007f0bca44a4de in std::function<void()>::operator() (this=0x7ffecd750e60) at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/std_function.h:593
    #63 0x00007f0bca44102f in QtInstance::RunInMainThread (this=0x55f6ce948eb0, func=...) at vcl/qt6/../qt5/QtInstance.cxx:209
    #64 0x00007f0bca4f24fa in QtInstanceNotebook::remove_page (this=0x55f6d18ae9e0, rIdent="generated") at vcl/qt6/../qt5/QtInstanceNotebook.cxx:104
    #65 0x00007f0bd8bc99ad in SfxTabDialogController::RemoveTabPage (this=0x55f6d18af070, rId="generated") at /home/michi/development/git/libreoffice/sfx2/source/dialog/tabdlg.cxx:827
    #66 0x00007f0b8f42863d in dbaui::AdvancedSettingsDialog::AdvancedSettingsDialog
        (this=0x55f6d18af070, pParent=0x55f6d158ae20, _pItems=0x55f6d15af940, _rxContext=uno::Reference to (cppu::(anonymous namespace)::ComponentContext *) 0x55f6ce92c458, _aDataSourceName=uno::Any("string": "file:///home/michi/Documents/New%20Database90.odb")) at /home/michi/development/git/libreoffice/dbaccess/source/ui/dlg/advancedsettings.cxx:381
    #67 0x00007f0b8f6da456 in std::make_unique<dbaui::AdvancedSettingsDialog, weld::Window*, SfxItemSet*, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>&, com::sun::star::uno::Any&>
        (__args=@0x7ffecd751248: 0x55f6d158ae20, __args=@0x7ffecd751240: 0x55f6d15af940, __args=uno::Reference to (cppu::(anonymous namespace)::ComponentContext *) 0x55f6ce92c458, __args=uno::Any("string": "file:///home/michi/Documents/New%20Database90.odb")) at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/unique_ptr.h:1084
    #68 0x00007f0b8f6d9e1f in dbaui::(anonymous namespace)::OAdvancedSettingsDialog::createDialog (this=0x55f6d15971d0, rParent=uno::Reference to (VCLXTopWindow *) 0x55f6d01bc780)
        at /home/michi/development/git/libreoffice/dbaccess/source/ui/uno/AdvancedSettingsDlg.cxx:103
    #69 0x00007f0bd586da5e in svt::OGenericUnoDialog::impl_ensureDialog_lck (this=0x55f6d15971d0) at /home/michi/development/git/libreoffice/svtools/source/uno/genericunodialog.cxx:169
    #70 0x00007f0bd586dcec in svt::OGenericUnoDialog::execute (this=0x55f6d15971d0) at /home/michi/development/git/libreoffice/svtools/source/uno/genericunodialog.cxx:200
    #71 0x00007f0b8f23e1a9 in dbaui::OApplicationController::openDialog (this=0x55f6d01db510, _sServiceName="com.sun.star.sdb.AdvancedDatabaseSettingsDialog")
        at /home/michi/development/git/libreoffice/dbaccess/source/ui/app/AppControllerGen.cxx:205
    #72 0x00007f0b8f1ea90a in dbaui::OApplicationController::Execute (this=0x55f6d01db510, _nId=12256, aArgs=empty uno::Sequence) at /home/michi/development/git/libreoffice/dbaccess/source/ui/app/AppController.cxx:1294
    #73 0x00007f0b8f3363a3 in dbaui::OGenericUnoController::executeChecked (this=0x55f6d01db510, _rCommand=..., aArgs=empty uno::Sequence) at /home/michi/development/git/libreoffice/dbaccess/source/ui/browser/genericcontroller.cxx:974
    #74 0x00007f0b8f3331da in dbaui::OGenericUnoController::dispatch (this=0x55f6d01db510, _aURL=..., aArgs=empty uno::Sequence) at /home/michi/development/git/libreoffice/dbaccess/source/ui/browser/genericcontroller.cxx:586
    #75 0x00007f0bd9d06c74 in framework::(anonymous namespace)::AsyncMenuExecute (data=0x55f6d1e5cae0) at /home/michi/development/git/libreoffice/framework/source/uielement/menubarmanager.cxx:793
    #76 0x00007f0bd2d7b301 in Link<void*, void>::Call (this=0x55f6d1e5bba8, data=0x55f6d1e5cae0) at include/tools/link.hxx:105
    #77 0x00007f0bd2d76c21 in ImplHandleUserEvent (pSVEvent=0x55f6d1e5bba0) at /home/michi/development/git/libreoffice/vcl/source/window/winproc.cxx:2314
    #78 0x00007f0bd2d73b4f in ImplWindowFrameProc (_pWindow=0x55f6cfb62b50, nEvent=SalEvent::UserEvent, pEvent=0x55f6d1e5bba0) at /home/michi/development/git/libreoffice/vcl/source/window/winproc.cxx:2871
    #79 0x00007f0bca42228c in SalFrame::CallCallback (this=0x55f6cfc41890, nEvent=SalEvent::UserEvent, pEvent=0x55f6d1e5bba0) at vcl/inc/salframe.hxx:310
    #80 0x00007f0bca4441cf in QtInstance::ProcessEvent (this=0x55f6ce948eb0, aEvent=...) at vcl/qt6/../qt5/QtInstance.cxx:614
    #81 0x00007f0bd3350b9d in SalUserEventList::DispatchUserEvents(bool)::$_0::operator()() const (this=0x7ffecd752cd0) at /home/michi/development/git/libreoffice/vcl/source/app/salusereventlist.cxx:119
    #82 0x00007f0bd3350a6b in SalUserEventList::DispatchUserEvents (this=0x55f6ce948f18, bHandleAllCurrentEvents=false) at /home/michi/development/git/libreoffice/vcl/source/app/salusereventlist.cxx:120
    #83 0x00007f0bca4407d1 in QtInstance::ImplYield (this=0x55f6ce948eb0, bWait=true, bHandleAllCurrentEvents=false) at vcl/qt6/../qt5/QtInstance.cxx:510
    #84 0x00007f0bca443d91 in QtInstance::DoYield (this=0x55f6ce948eb0, bWait=true, bHandleAllCurrentEvents=false) at vcl/qt6/../qt5/QtInstance.cxx:532
    #85 0x00007f0bd3419006 in InnerYield (i_bWait=true, i_bAllEvents=false) at /home/michi/development/git/libreoffice/vcl/source/app/svapp.cxx:390
    #86 0x00007f0bd341888f in Application::Yield () at /home/michi/development/git/libreoffice/vcl/source/app/svapp.cxx:503
    #87 0x00007f0bd3418670 in Application::Execute () at /home/michi/development/git/libreoffice/vcl/source/app/svapp.cxx:365
    #88 0x00007f0bdcb22c05 in desktop::Desktop::Main (this=0x7ffecd754880) at /home/michi/development/git/libreoffice/desktop/source/app/app.cxx:1680
    #89 0x00007f0bd3441d56 in ImplSVMain () at /home/michi/development/git/libreoffice/vcl/source/app/svmain.cxx:231
    #90 0x00007f0bd3443889 in SVMain () at /home/michi/development/git/libreoffice/vcl/source/app/svmain.cxx:249
    #91 0x00007f0bdcb9cc6a in soffice_main () at /home/michi/development/git/libreoffice/desktop/source/app/sofficemain.cxx:122
    #92 0x000055f6b5a4b9fd in sal_main () at /home/michi/development/git/libreoffice/desktop/source/app/main.c:51
    #93 0x000055f6b5a4b9d7 in main (argc=2, argv=0x7ffecd754a88) at /home/michi/development/git/libreoffice/desktop/source/app/main.c:49

Change-Id: I3dc605a965589abf4dbcdf289460aa31507df30a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/201362
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-03-11 04:33:10 +01:00
Noel Grandin 98174967db SvStream::WriteUniOrByteString should not need to specify encoding
Instead, rely on the stream being set into the correct encoding
during stream initialisation.

Change-Id: If141ba09afe1b04f5d836024975f00e8b20d1447
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200462
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2026-02-27 07:49:07 +01:00
Noel Grandin d235ca3589 SvStream::ReadUniOrByteString should not need to specify encoding
Instead, rely on the stream being set into the correct encoding
during stream initialisation.

Change-Id: I5b015f12f141a89b176c5a22aeecc4336f0b8f13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200460
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2026-02-27 07:48:47 +01:00
Samuel Mehrbrodt 7f9e03fb53 remove bogus assert
A data source can legitimately have a non-empty name but not be
registered in the object cache, e.g. when loading fails before
attachResource is called, or during context disposal.

This removes warnings like:
  warn:legacy.osl:1611319:1611319:dbaccess/source/core/dataaccess/databasecontext.cxx:489: ODatabaseContext::storeTransientProperties: a non-empty data source which I do not know?!

Change-Id: I75e878107396d984f2fcf3d7d6a6e7678bc9b0c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200060
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@collabora.com>
2026-02-26 07:46:47 +01:00
Samuel Mehrbrodt 2a6b0e91fa Remove unnecessary OSL_ENSURE
All callers handle empty storage references, and this is expected
when database components are initialized without a backing file.

Fixes warnings like:
  warn:legacy.osl:1530244:1530244:dbaccess/source/core/dataaccess/ModelImpl.cxx:768: ODatabaseModelImpl::getOrCreateRootStorage: no source to create the storage from!

Change-Id: Ie53b3be6908a2a9b910dd374703237a4aea09794
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200058
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@collabora.com>
2026-02-26 07:46:19 +01:00
Mike Kaganski 55b9d8607b "CharSet" -> "Encoding" in SvStream
Use the correct term. E.g., Unicode charset has different encodings
like UTF-8 and UTF-16, and we mean encoding here.

Change-Id: I65e90b31cda6e39fdb1584b492e6e0b9821865a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200285
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2026-02-25 10:33:55 +01:00
Gabor Kelemen a9e9175ba6 tdf#146619 Use more forward declarations in include/sfx2
This shaves off some 300M of input
Change-Id: I2fae9ff6c6dab31010986e55365676d4a01f402d

Change-Id: I3b2551a1937929100f25c01c0c416a419e7fbb51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199388
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
Tested-by: Jenkins
2026-02-23 12:19:48 +01:00
Gabor Kelemen 0a42ddbdf1 tdf#146619 Use more forward declarations in include/xmloff
Change-Id: I49e39d669ba77a99b77322275d2e54e211da5b11
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199386
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
2026-02-22 10:42:36 +01:00
Michael Weghorn b63cec2b7c dbaccess: Make MessageType an enum class
Change-Id: I8fdf5d7a82b863f7533cb426e4679ac7fab3f91b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199868
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-02-21 02:33:19 +01:00
Michael Weghorn 3556abfe3e dbaccess: Get SQL exception image name on demand
Instead of setting ExceptionDisplayInfo::sImage in
multiple code paths depending on the exception
type, drop the member and get the image name
when actually needed.

Change-Id: I684b7c5c63861949367e5a19989376a411fdf423
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199862
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-02-21 02:33:13 +01:00