summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-02-10Related: tdf#153510 Avoid modification of iterated containerMike Kaganski
A crash is seen when resizing a document locally; the problem is range-based for loop, which indirectly modifies its range: sclo.dll!ScAutoStyleList::AddInitial(const ScRange & rRange, const rtl::OUString & rStyle1, unsigned __int64 nTimeout, const rtl::OUString & rStyle2) Line 81 C++ sclo.dll!ScDocShell::Notify(SfxBroadcaster & __formal, const SfxHint & rHint) Line 685 C++ svllo.dll!SfxBroadcaster::Broadcast(const SfxHint & rHint) Line 41 C++ sclo.dll!ScInterpreter::ScStyle() Line 2628 C++ sclo.dll!ScInterpreter::Interpret() Line 4441 C++ sclo.dll!ScFormulaCell::InterpretTail(ScInterpreterContext & rContext, ScFormulaCell::ScInterpretTailParameter eTailParam) Line 1947 C++ sclo.dll!ScFormulaCell::Interpret(long nStartOffset, long nEndOffset) Line 1619 C++ sclo.dll!ScFormulaCell::MaybeInterpret() Line 470 C++ sclo.dll!ScFormulaCell::IsValue() Line 2763 C++ sclo.dll!ScConditionEntry::Interpret(const ScAddress & rPos) Line 670 C++ sclo.dll!ScConditionEntry::IsCellValid(ScRefCellValue & rCell, const ScAddress & rPos) Line 1238 C++ sclo.dll!ScConditionalFormat::GetData(ScRefCellValue & rCell, const ScAddress & rPos) Line 1836 C++ sclo.dll!`anonymous namespace'::handleConditionalFormat(ScConditionalFormatList & rCondFormList, const o3tl::sorted_vector<unsigned long,std::less<unsigned long>,o3tl::find_unique,1> & rCondFormats, ScCellInfo * pInfo, ScTableInfo * pTableInfo, ScStyleSheetPool * pStlPool, const ScAddress & rAddr, bool & bHidden, bool & bHideFormula, bool bTabProtect) Line 297 C++ sclo.dll!ScDocument::FillInfo(ScTableInfo & rTabInfo, short nCol1, long nRow1, short nCol2, long nRow2, short nTab, double fColScale, double fRowScale, bool bPageMode, bool bFormulaMode, const ScMarkData * pMarkData) Line 569 C++ sclo.dll!ScGridWindow::Draw(short nX1, long nY1, short nX2, long nY2, ScUpdateMode eMode) Line 556 C++ sclo.dll!ScGridWindow::Paint(OutputDevice & __formal, const tools::Rectangle & rRect) Line 458 C++ vcllo.dll!PaintHelper::DoPaint(const vcl::Region * pRegion) Line 313 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 617 C++ vcllo.dll!PaintHelper::~PaintHelper() Line 553 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 623 C++ vcllo.dll!PaintHelper::~PaintHelper() Line 553 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 623 C++ vcllo.dll!PaintHelper::~PaintHelper() Line 553 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 623 C++ vcllo.dll!PaintHelper::~PaintHelper() Line 553 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 623 C++ vcllo.dll!PaintHelper::~PaintHelper() Line 553 C++ vcllo.dll!vcl::Window::ImplCallPaint(const vcl::Region * pRegion, ImplPaintFlags nPaintFlags) Line 623 C++ vcllo.dll!vcl::Window::ImplCallOverlapPaint() Line 646 C++ vcllo.dll!vcl::Window::ImplHandlePaintHdl(Timer * __formal) Line 668 C++ vcllo.dll!vcl::Window::LinkStubImplHandlePaintHdl(void * instance, Timer * data) Line 648 C++ vcllo.dll!Link<Timer *,void>::Call(Timer * data) Line 111 C++ vcllo.dll!Timer::Invoke(Timer * arg) Line 81 C++ vcllo.dll!vcl::Window::ImplHandleResizeTimerHdl(Timer * __formal) Line 684 C++ vcllo.dll!vcl::Window::LinkStubImplHandleResizeTimerHdl(void * instance, Timer * data) Line 674 C++ vcllo.dll!Link<Timer *,void>::Call(Timer * data) Line 111 C++ vcllo.dll!Timer::Invoke(Timer * arg) Line 81 C++ vcllo.dll!vcl::Window::GetSizePixel() Line 2420 C++ sclo.dll!ScTabView::GetGridWidth(ScHSplitPos eWhich) Line 3032 C++ sclo.dll!ScViewData::CellsAtX(short nPosX, short nDir, ScHSplitPos eWhichX, unsigned short nScrSizeX) Line 2634 C++ sclo.dll!ScViewData::VisibleCellsX(ScHSplitPos eWhichX) Line 2710 C++ sclo.dll!ScTabView::PaintArea(short nStartCol, long nStartRow, short nEndCol, long nEndRow, ScUpdateMode eMode) Line 2386 C++ sclo.dll!ScTabViewShell::Notify(SfxBroadcaster & rBC, const SfxHint & rHint) Line 63 C++ svllo.dll!SfxBroadcaster::Broadcast(const SfxHint & rHint) Line 41 C++ sclo.dll!ScDocShell::PostPaint(const ScRangeList & rRanges, PaintPartFlags nPart, unsigned short nExtFlags) Line 172 C++ sclo.dll!ScDocShell::PostPaint(short nStartCol, long nStartRow, short nStartTab, short nEndCol, long nEndRow, short nEndTab, PaintPartFlags nPart, unsigned short nExtFlags) Line 106 C++ sclo.dll!ScDocShell::DoAutoStyle(const ScRange & rRange, const rtl::OUString & rStyle) Line 1580 C++ sclo.dll!ScAutoStyleList::InitHdl(Timer * __formal) Line 92 C++ sclo.dll!ScAutoStyleList::LinkStubInitHdl(void * instance, Timer * data) Line 84 C++ vcllo.dll!Link<Timer *,void>::Call(Timer * data) Line 111 C++ vcllo.dll!Timer::Invoke() Line 76 C++ vcllo.dll!Scheduler::CallbackTaskScheduling() Line 481 C++ vcllo.dll!SalTimer::CallCallback() Line 55 C++ vclplug_winlo.dll!WinSalTimer::ImplHandleElapsedTimer() Line 166 C++ vclplug_winlo.dll!ImplSalYield(bool bWait, bool bHandleAllCurrentEvents) Line 525 C++ vclplug_winlo.dll!WinSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents) Line 581 C++ vcllo.dll!ImplYield(bool i_bWait, bool i_bAllEvents) Line 475 C++ vcllo.dll!Application::Yield() Line 560 C++ vcllo.dll!Application::Execute() Line 453 C++ sofficeapp.dll!desktop::Desktop::Main() Line 1604 C++ vcllo.dll!ImplSVMain() Line 203 C++ vcllo.dll!SVMain() Line 236 C++ sofficeapp.dll!soffice_main() Line 94 C++ soffice.bin!sal_main() Line 51 C soffice.bin!main(int argc, char * * argv) Line 49 C ScAutoStyleList::InitHdl iterated over aInitials, and called pDocSh->DoAutoStyle, which eventually called ScAutoStyleList::AddInitial, which modified aInitials, resulting in dangling reference rInitial back in the ScAutoStyleList::InitHdl. Change-Id: Id4e2aac2f5b0b27a7a57f22c0c9cdf8a1e950f30 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146690 Tested-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-02-09tdf#153042 doc/x/rtf: pre-emptive unit tests for numbering tabstopJustin Luth
These existing unit tests need to have a tabstop in the front. Although different versions of MS Word can handle similar situations differently (regardless of compatibility settings - i.e. buggy) in these cases they are all rendered the same way by Word 2003/2010/2019. make CppunitTest_sw_rtfimport CPPUNIT_TEST_NAME=testTdf78506 make CppunitTest_sw_rtfimport CPPUNIT_TEST_NAME=testTdf116265 In this one, LO's chapter numbering defaults to none-numbering followed by a tabstop. The tabstop should not be there/never become visible. make CppunitTest_sw_ww8export3 CPPUNIT_TEST_NAME=testPresetDash For this added test, older versions of Word 2010/2003 don't show a tabstop. According to MS Word 2019 however, this should have a tabstop in the front. make CppunitTest_sw_ooxmlexport18 CPPUNIT_TEST_NAME=testTdf153042_largeTab ... but this nearly identical file does not display with any tabstop, and looks the same in all versions of Word. make CppunitTest_sw_ooxmlexport18 CPPUNIT_TEST_NAME=testTdf153042_noTab Change-Id: I59d904ef7dd37b694b02f57d6743ee5b232b42a6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146731 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
2023-02-09sw: fix crash in SwModule::InsertLabXisco Fauli
Seen in https://crashreport.libreoffice.org/stats/crash_details/e17357e9-d5e2-4eee-868e-ecf72e04dc41 Change-Id: I32f239249e72b6644b3a38d4dd9bbae65f7bede0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146692 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-09tdf#153501 Fix OString construction from nullptrStephan Bergmann
(see recent 6028e9fda96d0ed5da266b1c54a7755f7ba3408c "Finally drop undocumented rtl_[u]String_newFromStr null argument support") Change-Id: Ib47d2d674487baf0414b4a02b27b2359f809df97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146719 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-02-09make default selected table style to Default Table Style for only onlineMert Tumer
unfortunately when the table has a style sw/qa/uitest/writer_tests4/tdf115573.py fails because tables that have pre-applied style resets the style of the elements in their cells when a new row is inserted and the ui test above relies on that. For now this is LOK only Signed-off-by: Mert Tumer <mert.tumer@collabora.com> Change-Id: I2f60376fc2d929498aef45259a5ef291922ccdcd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132124 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Gökay ŞATIR <gokaysatir@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146723 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2023-02-09sw: change inserttable style option default to 1Mert Tumer
Right now it is default to NONE in the list if the user explicitly choses otherwise but that does not align with inserttable option on the toolbar there it is defaulted to "Default Table Style" 1 means "Default Table Style" Signed-off-by: Mert Tumer <mert.tumer@collabora.com> Change-Id: I1db19f0292ac6775653b0db3f2860fea9e3b0adf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131971 Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146722 Tested-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2023-02-09vcl: GetGlyphOutlineUntransformed() always returns true nowKhaled Hosny
Change-Id: I98eff6f138b57e249d8ce951c1b3747c773330ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146718 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2023-02-09Require HarfBuzz 5.1.0Khaled Hosny
This is the minimal version to provide the functionality we currently check for. Some important LO functionality currently depend on idfdef'd HarfBuzz code, and some distributions build against old system HarfBuzz leading to user bug reports that are tricky to track down, e.g: tdf#153048 and tdf#153470. Change-Id: I7d58ec46f8fd340d2592887c0088876d71351771 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146674 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2023-02-09check-last-commit: more detailed advice on using clang-formatIlmari Lauhakangas
Change-Id: I7e25acd02573c3e173eccefe9326dc42e2940f05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146688 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2023-02-09lok:sc: do not generate extra mouseup eventsHenry Castro
In tiled rendering case, the client side always will send the pair mousedown/mouseup events to server side, it is not necessary to generate extra mouseup events when the mouse tracking has ended, otherwise the selection engine will receive two mouseup events and wrong selection states. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I99983de9591e26f6e5327fff63c45e682cbf1999 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144168 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145611 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit 78568d4baac8b84b5d9cb50704b3e62b67ab1178) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146633 Tested-by: Jenkins
2023-02-09tdf#95936: Tooltip not updated in Toolbars after change ShortcutJuergen Funk
The update of all toobars after change the shortcut was missing, this patch update the toolbars now Change-Id: Ibc896dc48c9143307b028a3c271476482111c2c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146678 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-02-09Remove unused fieldSamuel Mehrbrodt
Change-Id: I6eda3b236c5b270c75947ca3313987e467d05982 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146693 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-02-09Remove trailing whitespaceSamuel Mehrbrodt
Change-Id: Iec7704a23bb9397bca1e0ee610707803c4b836b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146714 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-02-09Use SIMD in pixman for WASMTor Lillqvist
Emscripten and WASM do have some support for SSSE3, so let's try to use it, with -msimd128. See https://emscripten.org/docs/porting/simd.html. WASM is not x86, though, so avoid use of inline x86 assembly, like the CPUID instruction. Emscripten does not have <mmintrin.h> but does have <xmmintrin.h>, <emmintrin.h>, and <tmmintrin.h>. Change-Id: Ic3a47291f6c6dee6843e93ccecc92a643b269cb1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146691 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2023-02-09use new baseclass member insteadCaolán McNamara
Change-Id: I8a1855f24370c250d0d9aecd583fa47ffaa03afb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146686 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-09Enable opening of downloaded fonts only in ForKit in OnlineTor Lillqvist
We want that only the ForKit process needs to have access to new font files added to a Collabora Online instance dynamically by downloading from a server. There are however many locations in the Kit process, in core and in external libraries like harfbuzz, where the code wants to open a font file. Handle this so that the ForKit process opens such a downloaded font file and doesn't close it. The file descriptor is thus inherited by Kit processes. The font file pathname passed on to other code is a fake on in the format "/:FD:/%d" where the %d is the file descriptor of the opened font file. Add checks in all places where font files are opened, look for this special pathname format, and modify the code to just dup() the already open file descriptor in that case. All this is relevant for Linux only, as Collabora Online runs on Linux. Do the above for harfbuzz, cairo, fontconfig, and freetype. In addition make sure that these libraries (except harfbuzz which needs to be a static library and freetype) when bundled, on Linux, are built as shared libraries, and won't be confused with the corresponding system libraries by making sure their sonames are different. Change-Id: Ib059cb27e1637d07bb709249abd0d984f948caa9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140714 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146341 Tested-by: Jenkins
2023-02-09lok: sc: avoid the shared spreadsheet dialogHenry Castro
It is not needed the LO core shared spreadsheet because the online has collaborative functionality turns on by default. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I57ab83eae2913522d55704ae5a115e30c9d10034 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145091 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145613 Tested-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit 7137fa5158530c0f6adb1f80f82203b43213187f) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146632 Tested-by: Jenkins
2023-02-09loplugin:staticaccessStephan Bergmann
Change-Id: I24aa6b773f13b5d9924fbc867090ab9bf8c42045 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146681 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-02-09ofz#55798 TimeoutCaolán McNamara
Change-Id: Ifbff597d02da9b870ef936bdcca31e31d49cbf58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146684 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-09fix internal python build on powerpc64le-unknown-linux-gnuAndras Timar
Change-Id: I49c1368542a1af5dbbf377dbd8cb0cad8c6e2a38 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135174 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146689 Tested-by: Jenkins
2023-02-09lok: do not recreate lok-drawview for every tile paintDennis Francis
This lets the ScLOKDrawView live long enough for non-tile painting related invocation of its methods and hopefully those of its member objects. This is a blind fix for the following crash: /opt/collaboraoffice/program/../program/libsclo.so (anonymous namespace)::ScLOKProxyObjectContact::calculateGridOffsetForViewOjectContact(basegfx::B2DVector&, sdr::contact::ViewObjectContact const&) const ... /opt/collaboraoffice/program/libmergedlo.so SdrTextObj::NbcSetOutlinerParaObjectForText(std::unique_ptr<OutlinerParaObject, std::default_delete<OutlinerParaObject> >, SdrText*) /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/svx/source/svdraw/svdotext.cxx:1379 /opt/collaboraoffice/program/libmergedlo.so sdr::properties::TextProperties::ItemSetChanged(SfxItemSet const&) /opt/rh/devtoolset-10/root/usr/include/c++/10/bits/unique_ptr.h:360 /opt/collaboraoffice/program/libmergedlo.so sdr::properties::RectangleProperties::ItemSetChanged(SfxItemSet const&) /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/svx/source/sdr/properties/rectangleproperties.cxx:54 /opt/collaboraoffice/program/libmergedlo.so sdr::properties::DefaultProperties::SetObjectItem(SfxPoolItem const&) /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/svx/source/sdr/properties/defaultproperties.cxx:120 /opt/collaboraoffice/program/libscfiltlo.so XclTxo::XclTxo(XclExpRoot const&, EditTextObject const&, SdrObject*) /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/include/svl/cenumitm.hxx:26 /opt/collaboraoffice/program/libscfiltlo.so XclObjComment::XclObjComment(XclExpObjectManager&, tools::Rectangle const&, EditTextObject const&, SdrCaptionObj*, bool, ScAddress const&, tools::Rectangle const&, tools::Rectangle const&) /opt/rh/devtoolset-10/root/usr/include/c++/10/bits/unique_ptr.h:179 /opt/collaboraoffice/program/libscfiltlo.so XclExpNote::XclExpNote(XclExpRoot const&, ScAddress const&, ScPostIt const*, rtl::OUString const&) /opt/rh/devtoolset-10/root/usr/include/c++/10/tuple:137 /opt/collaboraoffice/program/libscfiltlo.so ExcTable::FillAsTableXml() /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/include/rtl/ref.hxx:65 /opt/collaboraoffice/program/libscfiltlo.so ExcDocument::ReadDoc() /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/sc/source/filter/excel/excdoc.cxx:747 /opt/collaboraoffice/program/libscfiltlo.so XclExpXmlStream::exportDocument() /home/collabora/jenkins/workspace/build_linux_co-2021_online_snapshot/sc/source/filter/excel/xestream.cxx:1107 /opt/collaboraoffice/program/libooxlo.so Change-Id: I248395cca1e2da37208fc449aca731175a5aa368 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133914 Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit c17c410706eab6e4d449b2a20a51bf3702329341) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143583 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146683 Tested-by: Jenkins
2023-02-09Update git submodulesChristian Lohmaier
* Update translations from branch 'master' to 579a868ba956eb78425da0c2510df67a12654c7e - update translations for 7.5.1 rc1/master and force-fix errors using pocheck Change-Id: Ic13a9cd6a7a1e31a54af71cca958781b6b663f86
2023-02-09android: Update Android Gradle Plugin to 7.4.1Michael Weghorn
Change-Id: I2a709e27d3ba42f0d1c2ae9510d2cbf1f38c484d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146682 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-02-09tdf#153229 add an extended tip for this new widgetCaolán McNamara
and fix mnemonic target Change-Id: Iad68048a6f0f824b774306033fdbbfe65b152804 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146675 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-09cid#1401328 suppress Uncaught exceptionCaolán McNamara
Change-Id: I20d7e1777b94d9e1d81e8e5b1640b8e912a981d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146676 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-09sw: call FormatEmpty() in SwTextFrame::Format() for split fly mastersMiklos Vajna
The problem was that the text in the anchor frame of a split fly frame was duplicated on the old page and the new page as well. The reason for this seems to be that the master has no content and the follow has all the content (this is wanted), but then there is no code to explicitly clear the master. In other cases the master always gets some new content where portion building for that new content starts by throwing away the old portions. Once SwTextFrame::Format() and SwTextFrame::FormatEmpty() explicitly checks for these master anchors, the unwanted text in the master anchor disappears. An extra tweak is needed in SwTextFrame::PaintEmpty() to even hide the paragraph marker: this frame is empty but has a follow frame, so we should not show a paragraph marker there. Finally introduce a SwTextFrame::HasNonLastSplitFlyDrawObj() to be able to check for this "empty master anchor for split fly" case at a single place. With this <https://bugs.documentfoundation.org/attachment.cgi?id=185144> from <https://bugs.documentfoundation.org/show_bug.cgi?id=61594> gets laid out reasonably: the position is not perfect but we detect that only 1 para of the text frame fits page 1, we create a 2nd page and we correctly move exactly the text frame's 2nd para to page 2. Change-Id: I871bba2de5b829e667d5cfb1cbe0ba4cc2274edd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146680 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2023-02-09sw floattable: fix cid#1520804Miklos Vajna
GetFrameRstHeight() already assumes the m_pFrame is non-nullptr, so no need to check for this. The logic in the block will be necessary elsewhere as well, I'll extract that to a function in a follow-up change, so let's just do a minimal fix here. Change-Id: I6cb2a44e629c273f473278d61607705a2b9a7a4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146679 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-02-09sw: fix undo comment of FN_UPDATE_TEXT_FORMFIELDMiklos Vajna
It's an update, not an insert. One has to dispatch .uno:TextFormField, then move inside the formfield with the cursor finally dispatch .uno:UpdateTextFormField to see this in action. Change-Id: Id9e3c7b9d08582cbf83f64ff04c97dff5cbb88f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146671 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-02-09tdf#153476 Disable MS telemetry in VsDevCmd.batHossein
MS telemetry inside VsDevCmd.bat causes problems for the autogen.sh script which uses it to find the Visual Studio C/C++ standard library via the environment variables that show the UCRT path and version. VsDevCmd.bat is the "Developer Command Prompt for Visual Studio". The telemtry is disabled by: set VSCMD_SKIP_SENDTELEMETRY=1 This change resolves the problems described in tdf#153476. Change-Id: I8b77a2ca0c3577b3ba490723ab7901f463562578 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146677 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-02-09re-apply "optimize ConfigurationProperty::get()"Noel Grandin
This reverts commit 05b2bfc289df8712097cc1e640bf7d3bc6b86a84, but adds clearing of some more members, which were holding onto references to bits of config data after the config service was disposed. Change-Id: I9969ee2472445e4e1dbe8ea15e081401845ad29c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146605 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-02-09tdf#143148 Use pragma once instead of include guards in hwpfilterDevansh Jain
Change-Id: I010b6c76c1f859340f544409bbaab946cf2a6aa2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146554 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2023-02-08tdf#153423 tdf#150197: use getToken in proper orderJustin Luth
This fixes a LO 7.5 regression from my commit 727c5ed30f68abc28bb04531b25a1df30810760f getToken steps along the string and consumes it, so these needed to remain in the same order as they had been originally. Dumb thing to overlook. Change-Id: I483980eafb7deb0c224063ad41616bb21ddb2191 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146672 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
2023-02-08Adapt to macOS Resources vs. share namingStephan Bergmann
On macOS, "Tools - Macros - Organize Macros - Basic... - Macro From:" erroneously listed all the per-application modules ("Access2Base", "Depot", "Euro", ...) under "My Macros" instead of "Application Macros". Change-Id: Ic997ab30d9205d8402136ea381745c08ce555623 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146673 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-02-08tdf#153229 use bestMatchFromAppearancesWithNames to take user pref into accountCaolán McNamara
so user's override of system is taken into account for the icon theme. Change-Id: I02a9bf67eb6a3406f0e60bea58387e2e7457c995 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146669 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08Related: tdf#152486 infobar is white text on light button in light modeCaolán McNamara
background isn't "bright" or "dark" enough to be considered one or the other. This is only used for the infobars, so black text is good enough for the current bg colors in use. Change-Id: I4c2c4fadac72cc35aebeadec417186c6358c0a77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146667 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08Revert "tdf#148360 doc import: add NO_NUMBERING_SHOW_FOLLOWBY(true)"Justin Luth
This reverts commit 2405a36f3bcd43f80371ccaed47f7523ff0d8757 which was backported to 7.4.1. This solves the regression report for DOC in tdf#153042. The problem is that the tab-without-numbering is displaying in cases where it shouldn't (i.e. when the tabstop position matches the first line indent). Although the patch itself is fine (DOC should do the same thing as DOCX) the feature is incomplete, even for DOCX/RTF. So just remove DOC from this mix - especially since there seem to be a LOT more instances of DOC files that need the incomplete aspect. Once it is proven to work OK for DOCX, we can add DOC back in. Change-Id: I3c550fc2ca29cf1490ec0a5e3979a6acbd102385 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146670 Tested-by: Justin Luth <jluth@mail.com> Reviewed-by: Justin Luth <jluth@mail.com>
2023-02-08osl::Mutex->std::mutex in ScExternalRefCacheNoel Grandin
Change-Id: I3736683d0a7d20694ac2375016c722b4233fdcae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146555 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-02-08tdf#153229 add a switch to override honoring system dark modeCaolán McNamara
Change-Id: Iafb6182e05dc65d20d0809476ee58908f7426d39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146597 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08SetAlternatingRowColors is gone nowCaolán McNamara
Change-Id: I59a17b45c34902d3b692c5a6bd70f4286bcae609 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146666 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08Fix bogus uses of OUString::createFromAsciiStephan Bergmann
We got a report on IRC of builds failing with > svidl: /home/dolezvo1/Downloads/libreoffice/sal/rtl/ustring.cxx:278: void rtl_uString_newFromAscii(rtl_uString**, const char*): Assertion `static_cast<unsigned char>(*pCharStr) < 0x80' failed. when the "l" in "Downloads" was some non-ASCII character (whose exact identity was apparently obscured by the used pastebin service, though). Change-Id: Ib460793b0f8aa5e8f8822fa224d67e5a622a234d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146664 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-02-08remove SvTreeListEntry background colorCaolán McNamara
and don't overwrite the rendercontext background, which has the side effect that switching dark/light mode or other theme changes gives immediate change in visible treeviews. So tools, options, view, switching Light/Dark, Apply doesn't show a treeview with the old modes background Change-Id: I9c403beba53f1f1a28464ad8c1c70018be1cf43f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146656 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08SetAlternatingRowColors is unusedCaolán McNamara
Change-Id: I0f214bccb28c9894b5c23600ca19b16dd3257cae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146655 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-02-08openssl: upgrade to release 3.0.8Michael Stahl
Fixes CVE-2023-0401 CVE-2023-0286 CVE-2023-0217 CVE-2023-0216 CVE-2023-0215 CVE-2022-4450 CVE-2022-4304 CVE-2022-4203 CVE-2022-3996 Remove the patch that fixed CVE-2022-3996. Change-Id: I8587d780ea7dc07637278643dc1c49b577e3ae56 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146657 Tested-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-02-08tdf#147488 BASIC: Create empty module when an empty library is selectedRafael Lima
If the Standard library is empty (has no modules), when the Basic IDE is opened it shows only a black screen with nothing. This patch makes it so that when the Standard library has no modules, a generic module is created and shown. Change-Id: I26dbe41b4244492a21649ab08c5fc2df24ca12a9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145309 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Jenkins
2023-02-08htmlexport: close li mark not only in xhtmlSzymon Kłos
As commented in sw/source/filter/html/htmlatr.cxx:766 "// OutHTML_NumberBulletListEnd() will end a list item" We have to do it also in HTML not only XHTML so node will be closed and we get correct structure. This is followup for: commit 2466b9fcf20ee61f6fc621298011c0efaa55e7c6 Author: Miklos Vajna <vmiklos@collabora.com> Date: Mon Feb 21 16:38:51 2022 +0100 sw HTML export, XHTML mode: fix lost </li> when last list item is not numbered Change-Id: I99baa59b437572b157df8057445cf6c741f936b4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143508 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146651 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2023-02-08editeng: remove SvxLRSpaceItem::nTxtLeftMichael Stahl
Several parts of SvxLRSpaceItem appear to maintain an invariant of the 3 members nTxtLeft/nLeftMargin/nFirstLineOffset: nLeftMargin is either equal to nTxtLeft if nFirstLineOffset is positive, otherwise equal to nTxtLeft + nFirstLineOffset. But not every part maintains it: there are functions SetLeftValue() and SetLeft() which simply write into nLeftMargin regardless, and a constructor that takes 3 separate numbers without any checks. The constructor calls violate the invariant in 2 ways: nTxtLeft is simply set to 0 (many cases), and one case in OutlineView::OutlineView() that sets nTxtLeft to 2000 but the other 2 at 0. Another odd thing is that the UNO services that expose SvxLRSpaceItem either expose a property for MID_L_MARGIN or for MID_TXT_LMARGIN but never both. It looks like there are 2 distinct usages of SvxLRSpaceItem: for anything that's applied to paragraphs, all 3 members are used; for anything else, nTxtLeft is unused. Try to simplify this by removing the nTxtLeft member, instead GetTextLeft() simply calculates it. Also assert in SetLeftValue()/SetLeft() that nFirstLineOffset is 0. Change-Id: Ida900c6ff04ef78e92e8914beda1cc731a695b06 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146643 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-02-08editeng: SvxLRSpaceItem uninline some functionsMichael Stahl
Change-Id: I719ec54ef0e4540c8dbacb783b335ccb69b08e9a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146642 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-02-08tdf#147740 fix disappearing icons in groupbarSzymon Kłos
Change-Id: Ia67b90d05bccbd4d2c2553109ea7372574ee21d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146584 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2023-02-08Avoid SolarMutexReleaserStephan Bergmann
UITest_writer_macro_tests occasionally failed with > ==3730889==ERROR: AddressSanitizer: heap-use-after-free on address 0x60d00057d080 at pc 0x7f75353d933c bp 0x7ffcedf8de90 sp 0x7ffcedf8de88 > READ of size 8 at 0x60d00057d080 thread T0 > #0 in basctl::ModulWindow::GetState(SfxItemSet&) at basctl/source/basicide/baside2.cxx:1088:22 > #1 in basctl::Shell::GetState(SfxItemSet&) at basctl/source/basicide/basides1.cxx:1160:18 > #2 in SfxStubbasctl_ShellGetState(SfxShell*, SfxItemSet&) at workdir/SdiTarget/basctl/sdi/basslots.hxx:164:1 > #3 in SfxDispatcher::FillState_(SfxSlotServer const&, SfxItemSet&, SfxSlot const*) at sfx2/source/control/dispatch.cxx:1658:9 > #4 in SfxBindings::Update_Impl(SfxStateCache&) at sfx2/source/control/bindings.cxx:260:22 > #5 in SfxBindings::NextJob_Impl(Timer const*) at sfx2/source/control/bindings.cxx:1275:17 > #6 in SfxBindings::NextJob(Timer*) at sfx2/source/control/bindings.cxx:1220:5 > #7 in SfxBindings::LinkStubNextJob(void*, Timer*) at sfx2/source/control/bindings.cxx:1218:1 > #8 in Link<Timer*, void>::Call(Timer*) const at include/tools/link.hxx:111:45 > #9 in Timer::Invoke() at vcl/source/app/timer.cxx:75:21 > #10 in Scheduler::CallbackTaskScheduling() at vcl/source/app/scheduler.cxx:481:20 > #11 in SalTimer::CallCallback() at vcl/inc/saltimer.hxx:54:13 > #12 in SvpSalInstance::CheckTimeout(bool) at vcl/headless/svpinst.cxx:161:53 > #13 in SvpSalInstance::ImplYield(bool, bool) at vcl/headless/svpinst.cxx:399:17 > #14 in SvpSalInstance::DoYield(bool, bool) at vcl/headless/svpinst.cxx:471:21 > #15 in ImplYield(bool, bool) at vcl/source/app/svapp.cxx:475:48 > #16 in Application::Yield() at vcl/source/app/svapp.cxx:559:5 > #17 in Application::Execute() at vcl/source/app/svapp.cxx:453:13 > #18 in desktop::Desktop::Main() at desktop/source/app/app.cxx:1604:13 > #19 in ImplSVMain() at vcl/source/app/svmain.cxx:203:35 > #20 in SVMain() at vcl/source/app/svmain.cxx:235:12 > #21 in soffice_main at desktop/source/app/sofficemain.cxx:94:12 > #22 in sal_main at desktop/source/app/main.c:51:15 > #23 in main at desktop/source/app/main.c:49:1 > > 0x60d00057d080 is located 0 bytes inside of 144-byte region [0x60d00057d080,0x60d00057d110) > freed by thread T20 here: > #0 in operator delete(void*, unsigned long) at /home/sbergman/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:164:3 > #1 in basctl::ModulWindow::~ModulWindow() at basctl/source/basicide/baside2.cxx:235:1 > #2 in VclReferenceBase::release() const at include/vcl/vclreferencebase.hxx:43:13 > #3 in rtl::Reference<basctl::BaseWindow>::~Reference() at include/rtl/ref.hxx:129:22 > #4 in VclPtr<basctl::BaseWindow>::disposeAndClear() at include/vcl/vclptr.hxx:209:5 > #5 in basctl::Shell::~Shell() at basctl/source/basicide/basidesh.cxx:246:23 > #6 in basctl::Shell::~Shell() at basctl/source/basicide/basidesh.cxx:228:1 > #7 in SfxViewFrame::ReleaseObjectShell_Impl() at sfx2/source/view/viewfrm.cxx:1114:9 > #8 in SfxViewFrame::~SfxViewFrame() at sfx2/source/view/viewfrm.cxx:1905:5 > #9 in SfxViewFrame::Close() at sfx2/source/view/viewfrm.cxx:1166:5 > #10 in SfxFrame::DoClose_Impl() at sfx2/source/view/frame.cxx:138:37 > #11 in SfxBaseController::dispose() at sfx2/source/view/sfxbasecontroller.cxx:931:28 > #12 in (anonymous namespace)::XFrameImpl::setComponent(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&) at framework/source/services/frame.cxx:1493:33 > #13 in (anonymous namespace)::XFrameImpl::close(unsigned char) at framework/source/services/frame.cxx:1704:12 > #14 in SfxFrame::DoClose() at sfx2/source/view/frame.cxx:104:29 > #15 in SfxViewFrame::Notify(SfxBroadcaster&, SfxHint const&) at sfx2/source/view/viewfrm.cxx:1703:28 > #16 in SfxBroadcaster::Broadcast(SfxHint const&) at svl/source/notify/SfxBroadcaster.cxx:40:24 > #17 in (anonymous namespace)::SfxModelListener_Impl::notifyClosing(com::sun::star::lang::EventObject const&) at sfx2/source/doc/objxtor.cxx:145:12 > #18 in SfxBaseModel::close(unsigned char) at sfx2/source/doc/sfxbasemodel.cxx:1487:76 > #19 in SfxBaseModel::dispose() at sfx2/source/doc/sfxbasemodel.cxx:725:13 > #20 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77:5 > #21 in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233:13 > #22 in unoInterfaceProxyDispatch at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:413:13 > #23 in binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny*, std::__debug::vector<binaryurp::BinaryAny, std::allocator<binaryurp::BinaryAny>>*) const at binaryurp/source/incomingrequest.cxx:236:13 > #24 in binaryurp::IncomingRequest::execute() const at binaryurp/source/incomingrequest.cxx:79:26 > #25 in request at binaryurp/source/reader.cxx:86:9 > #26 in cppu_threadpool::JobQueue::enter(void const*, bool) at cppu/source/threadpool/jobqueue.cxx:100:17 > #27 in cppu_threadpool::ORequestThread::run() at cppu/source/threadpool/thread.cxx:165:31 > #28 in threadFunc at include/osl/thread.hxx:189:15 > #29 in osl_thread_start_Impl(void*) at sal/osl/unx/thread.cxx:265:9 where the ModulWindow apparently happens to get deleted by the UNO worker thread in the window of time when ModuleWindow::IsPasteAllowed temporarily dropped the SolarMutex on the main thread. Temporarily dropping the SolarMutex around the xClipboard->getContents() call had been there ever since the code got introduced in c29c7a86c8cb18d0e0602cddb3f24373e2424098 "#92173# Reimplement Basic password protection UI in Basic IDE", and at least theoretically it is of course the right thing to do to not call that UNO API with the SolarMutex locked. But it is of course also not a good idea to use SolarMutexReleaser, and that xClipboard->getContents() call doesn't look like it leads to deadlock. Change-Id: I3660065508d37801125f675440071d61e41906d1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146650 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-02-08tdf#153434 crash on "new" macro with no cursorCaolán McNamara
probably good in trunk since: commit 6e2bd11251afbe64f9889ede36b28b00f47aaff5 Date: Sun Aug 7 12:49:11 2022 +0100 tdf#150291 Revert "Fix crash when no valid EntryDescriptor found" but still visible in 7-4 Change-Id: I63898ed3e33f73f8a93528872449539c5df6574f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146645 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>