Age | Commit message (Collapse) | Author |
|
Change-Id: Id0df30bed0de7db0564816180497406c55cf9fff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136476
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The bug document had an outer (ordered) numbering and an inner one,
finally the outer numbering was continued. This was fine after DOCX
import, but once we saved to ODT and re-opened, the second outer
numbering was restarted, not continued the first outer one.
This happened because on one hand, lcl_SwXParagraph_getPropertyState()
says that the state of the ListId property is "default" if the
paragraph's item set doesn't have a RES_PARATR_LIST_ID, but on the other
hand xmloff/ will only write the xml:id="..." attribute on a list if the
ListId state is not default. This is a problem, because it can happen
that xmloff/ refers to a list later by its id, even if the list doesn't
have a RES_PARATR_LIST_ID set.
Fix the problem by relaxing the condition where
lcl_SwXParagraph_getPropertyState() reports FN_UNO_LIST_ID as
non-default: just require that that the text node has a numbering rule
+ the numbering rule has at least one continue list. This fixes the
reported DOCX -> ODT case with named list styles and keeps the original
ODT import and HTML import use-cases working to not write un-referenced
xml:id="..." attributes on export.
This was a regression from commit
8f48f91009caa86d896f247059874242ed18bf39 (ODT export: omit unreferenced
<text:list xml:id="...">, 2022-03-10).
Change-Id: I300ebe7aa7da71a336c03abe7530074b696417f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136477
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Ia628b2af646e576d52b6c72352255710a885c23f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136452
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I16e7179b2851640b4d73665685dcc1e84042ddaf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136270
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I9fae1d259ecdca37a1babac8a8a0e503b2dc0118
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135960
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Labels of the new hyphenation options "Hyphenation zone" and
"Minimum word length in characters" were always black, instead
of gray, when Hyphenation is disabled.
Follow-up to commit 7a1d4b7d1db93ca1f541856a8d00d621d50e7bd6
"tdf#149420 sw offapi xmloff: add hyphenation zone" and
commit 29359fc15c435cec17987fd6221ab6833d38746e
"tdf#149324 sw offapi xmloff: add option to not hyphenate short words".
Change-Id: Ic41c2fa0fa69385013b1e90568084956cc5d791d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136367
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Kme, MCD, MacroName and MacroNames
See tdf#94879 for motivation.
Change-Id: Ida3a41b22887f5a21b3be48665fa722d4ff2b027
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136449
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Hyperlink URLs on images are currently written to the HTML output as-is,
without any any encoding.
Image links are written using HtmlWriter from svtools, which has the
advantage of not building the markup manually (similar to
sax_fastparser::FastSerializerHelper for XML), but that doesn't do any
escaping. Some other parts of the HTML export build the export markup
manually, but use HTMLOutFuncs::Out_String() to encode problematic
content.
Fix the problem by using HTMLOutFuncs::Out_String() in HtmlWriter for
attribute values: it seems reasonable to assume that users of HtmlWriter
would pass in unencoded strings, similar to how the sax serializer
works.
This could lead to double-encoding in case some user of
HtmlWriter::attribute() would encode its attribute value already, but
inspecting existing calls, none of the clients seem to do that at the
moment.
Change-Id: I5439e829b1b837cb9c51292b118f0b47e84197db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136399
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
above tracked heading
For gtk3, treeview scroll_to_row to a visible collapsed row makes
the row expanded. The sal version does not. To make the behavior
consistent, the patch removes the call to
gtk_tree_view_expand_to_path which causes a visible collapsed row to
expand.
Change-Id: I29e67535ab23aa1952b4ff97c1b81276794b8036
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136436
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
|
|
* Update helpcontent2 from branch 'master'
to 4e1b00e5d940b647b550b3314985ebb775be2543
- tdf#149218 Add pivot table formatting help page
Change-Id: I807b0e62998bac85cf0cf348d57cb1f99b1dc742
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136411
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Store foreground color for color filtering, because in OOXML
the foreground color is used for color filtering and we overwrote
it with the background color which is used for conditional formatted cells too.
Regression from commit: 6f908b48373b71d45c8119b296b0504fb586f6f8
(tdf#143104 Fix xlsx import/export of color filter colors)
Change-Id: I737e6f1170851822a2689fa477db59e62f0d47fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136055
Tested-by: Jenkins
Tested-by: Gabor Kelemen <kelemeng@ubuntu.com>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
My fix for tdf#149071 actually disabled the optimization for all
ByValue lookups, because in fact all such lookups have maString set.
So lookups where the cells are a mix of numeric and string values
need different handling. A simple solution is detecting such a mix
when collecting the values for ScSortedRangeCache and disabling
the optimization in such a case. But it turns out that queries
containing such a mix are not that rare, as documents may e.g.
do COUNTIF($C:$C) where the given column has numeric values that
start with a textual header. So bail out only if the string cell
actually could affect the numeric query.
Also fix ScSortedRangeCache usage depending on query parameters,
different instances are needed for e.g. different ScQueryOp,
because the ScQueryEvaluator functions may return different
results (isQueryByString() is automatically true for SC_EQUAL).
Change-Id: Ib4565cbf6194e7c525c4d10d00b1c31707952a79
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136403
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
As can be seen at the beginning of ScQueryEvaluator::ValidQuery()
in the for loop condition. Comes from 4fd1333ba4bb4f2311e909829,
and I'm not quite sure if the passed value is really supposed
to be always true or if it's a mistake.
Change-Id: I44bde5d50ac70332d6e48ee583ffed13e664cd61
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136396
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
The import of pivot tables in xlsx triggers recalculations, even
though it's not necessary. Fixing that properly seems complex given
how ScDPObject is designed, so at least ensure the calculation is
efficient (formula grouping is otherwise done only after pivot
table import). This can especially noticeable for formulas where
groups make a big difference (e.g. COUNTIFS uses ScSortedRangeCache
only for formula groups).
Change-Id: I8dbdf854880707a9707cdc9dc3d73fc1d6b6b000
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136362
Tested-by: Luboš Luňák <l.lunak@collabora.com>
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
The parsing of sheet names and range addresses
has been reviewed to include the exact rules for
sheet naming:
must not be empty
must not contain []*?:/\
must not use ' (apostrophe) as 1st and last character
Additionally (ScriptForge only) it must not contain "~"
which, by convention, indicates the active sheet.
The code accepts exotic sheet names like:
"$"
"$Sheet99"
"$Sheet'99"
"$.Sheet'99"
"!'@#$%^&()-_=+{}|;,<.>"""
and exotic addresses like:
"'$'.A1"
"'$Sheet99'.A1"
"'$Sheet''99'.A1"
"'$.Sheet''99'.A1"
"'!''@#$%^&()-_=+{}|;,<.>""'.A1"
Target is to match completely the Calc constraints for
writing formulas and sheet names..
The same rules are applicable evenly for user scripts
written either in Basic or in Python.
Change-Id: I759d7700152a3d811b89f156c4d9eee0071c2a7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136446
Tested-by: Jean-Pierre Ledure <jp@ledure.be>
Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
Tested-by: Jenkins
|
|
Change-Id: Ia99101f10b3b98f2ba935d1f7cadfbbd4aaade6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136439
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: Ief3c0d01746ea1897b55f4f0994237d28a8a04e6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136440
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
* Update helpcontent2 from branch 'master'
to d5ef41a2b82144ac39ce0169013cbc803b456a6f
- String updates…
... to remove some hardcoded product names and to bring the help
in line with recent UI changes
Kudos to Celia and Olivier
Change-Id: If83039fce0612e04d59c5a5bebba6993c1e5a044
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136445
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Celia resolved, and I concurred, that just having a bunch of obscure
language/script names thrown around was puzzling for users, and
suggested this new label. In a happy coincidence (great minds think
alike!), Olivier thought about the importance of us using precise
Unicode terminology in commit df030f6e632ab0046bd51d1f8425ecd8362c2b33.
So let’s double down!
Co-authored-by: Celia Palacios <celia.palacios@libreoffice.org>
Change-Id: I74f54da00e9cf8fcc1a5603e5b1850b2b41c668f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136444
Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Change-Id: Ia83a46286f16ad94e6829e9c372c4e9465f503e0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136443
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Revert the offending commit
commit feec8e3c34e08b621098a17f1011dccd0b4f7f4c
reduce iteration in ScViewData::GetScrPos
Change-Id: Id1df2bf7f87e6b800b40871c1472ed466b7eb6a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136442
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Thanks to Mike Kaganski to come up with the correct asserts.
Change-Id: I01b2b0026fc4de67a14fa803357a4c28951088ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135810
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
* Update helpcontent2 from branch 'master'
to 82662154a36127478be0ead3ced7550dd6f2a1b4
- refactor to avoid problem for some translators
Change-Id: I60eedf1a4ac8f77bcc3747ea9454de30ad183ae5
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136421
Reviewed-by: Seth Chaiklin <sdc.blanco@youmail.dk>
Tested-by: Jenkins
|
|
Change-Id: Ic6134cae251b8096b720005b62ce282def6b7ac1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136368
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Added to page context menu, standard toolbar, and line & filling
toolbar
Change-Id: I04c2a77ac25a0c00771a74069f61a94d8e523a42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136360
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
Partial support for transform animations.
At present only rotate is supported.
Change-Id: If9ba69ec0b74bc3b527a963cb0c0bf3a7bfa5220
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134626
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
|
|
See frame #5 and frame #45 where
both the same DNDEventDispatcher object and both functions lock m_aMutex which is a std::mutex since
commit 8de81db4e3fca488d50db2d74734109b31541a6f
Date: Mon Aug 2 09:21:17 2021 +0200
osl::Mutex->std::mutex in DNDEventDispatcher
#0 0x00007ff094530c40 in __lll_lock_wait () at /lib64/libc.so.6
#1 0x00007ff0945371d2 in pthread_mutex_lock@@GLIBC_2.2.5 () at /lib64/libc.so.6
#2 0x00007ff08b901663 in __gthread_mutex_lock(pthread_mutex_t*) (__mutex=0x1a32c60)
at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/x86_64-redhat-linux/bits/gthr-default.h:749
#3 0x00007ff08b9024d5 in std::mutex::lock() (this=0x1a32c60) at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/bits/std_mutex.h:100
#4 0x00007ff08b9018f3 in std::scoped_lock<std::mutex>::scoped_lock(std::mutex&) (this=0x7ffdd0d79240, __m=...)
at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/mutex:731
#5 0x00007ff08b9006a8 in DNDEventDispatcher::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x1a32c10, dtde=...)
at vcl/source/window/dndeventdispatcher.cxx:156
#6 0x00007ff075f47658 in GtkInstDropTarget::fire_dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x199eb40, dtde=...)
at vcl/unx/gtk3/gtkinst.cxx:1710
#7 0x00007ff0760a7010 in GtkInstDropTarget::signalDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int)
(this=0x199eb40, pWidget=0x1c67e40, context=0x1957450, x=89, y=175, time=0) at vcl/unx/gtk3/gtkframe.cxx:5026
#8 0x00007ff07609bb77 in GtkSalFrame::signalDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int, void*)
(pWidget=0x1c67e40, context=0x1957450, x=89, y=175, time=0, frame=0x19b7d70) at vcl/unx/gtk3/gtkframe.cxx:4922
#9 0x00007ff075649527 in _gtk_marshal_BOOLEAN__OBJECT_INT_INT_UINTv () at /lib64/libgtk-3.so.0
#10 0x00007ff0865dcd5b in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#11 0x00007ff0865ddeb8 in g_signal_emit_by_name () at /lib64/libgobject-2.0.so.0
#12 0x00007ff07595b491 in gtk_drag_dest_motion.lto_priv () at /lib64/libgtk-3.so.0
#13 0x00007ff0757b8f7d in gtk_main_do_event () at /lib64/libgtk-3.so.0
#14 0x00007ff0754e5463 in _gdk_event_emit () at /lib64/libgdk-3.so.0
#15 0x00007ff075518056 in gdk_event_source_dispatch () at /lib64/libgdk-3.so.0
#16 0x00007ff0864c3faf in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#17 0x00007ff0865192c8 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#18 0x00007ff0864c1940 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#19 0x00007ff075f3e60f in GtkSalData::Yield(bool, bool) (this=0x952930, bWait=false, bHandleAllCurrentEvents=false) at vcl/unx/gtk3/gtkdata.cxx:405
#20 0x00007ff075f43e43 in GtkInstance::DoYield(bool, bool) (this=0x9527e0, bWait=false, bHandleAllCurrentEvents=false) at vcl/unx/gtk3/gtkinst.cxx:428
#21 0x00007ff08c2dc5df in ImplYield(bool, bool) (i_bWait=false, i_bAllEvents=false) at vcl/source/app/svapp.cxx:474
#22 0x00007ff08c2dc24d in Application::Reschedule(bool) (i_bAllEvents=false) at vcl/source/app/svapp.cxx:493
#23 0x00007ff091eeeb55 in SbiRuntime::Step() (this=0xa21eb20) at basic/source/runtime/runtime.cxx:801
#24 0x00007ff091e0e659 in (anonymous namespace)::RunInitGuard::run() (this=0x76a6290) at basic/source/classes/sbxmod.cxx:1015
#25 0x00007ff091e0d135 in SbModule::Run(SbMethod*) (this=0xa0ada00, pMeth=0xa16d7e0) at basic/source/classes/sbxmod.cxx:1176
#26 0x00007ff091e0c503 in SbModule::Notify(SfxBroadcaster&, SfxHint const&) (this=0xa0ada00, rBC=..., rHint=...) at basic/source/classes/sbxmod.cxx:775
#27 0x00007ff090b3ee6e in SfxBroadcaster::Broadcast(SfxHint const&) (this=0xa231de0, rHint=...) at svl/source/notify/SfxBroadcaster.cxx:39
#28 0x00007ff091e1372e in SbMethod::Broadcast(SfxHintId) (this=0xa231ca0, nHintId=SfxHintId::BasicDataWanted) at basic/source/classes/sbxmod.cxx:2113
#29 0x00007ff091f6ddfa in SbxObject::Call(rtl::OUString const&, SbxArray*) (this=0xa258670, rName="DTL_dragOver", pParam=0xa1e47d0)
at basic/source/sbx/sbxobj.cxx:274
#30 0x00007ff091d9dd76 in StarBASIC::Call(rtl::OUString const&, SbxArray*) (this=0xa258670, rName="DTL_dragOver", pParam=0xa1e47d0)
at basic/source/classes/sb.cxx:1324
#31 0x00007ff091dd7127 in (anonymous namespace)::BasicAllListener_Impl::firing_impl(com::sun::star::script::AllEventObject const&, com::sun::star::uno::Any*)
(this=0xa2344a0, Event=..., pRet=0x0) at basic/source/classes/sbunoobj.cxx:3831
#32 0x00007ff091dd6ba1 in (anonymous namespace)::BasicAllListener_Impl::firing(com::sun::star::script::AllEventObject const&) (this=0xa2344a0, Event=...)
at basic/source/classes/sbunoobj.cxx:3855
#33 0x00007ff091dd792f in (anonymous namespace)::InvocationToAllListenerMapper::invoke(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<short>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
(this=0xa110b70, FunctionName="dragOver", Params=uno::Sequence of length 1 = {...}) at basic/source/classes/sbunoobj.cxx:3983
#34 0x00007ff091dd7be7 in non-virtual thunk to (anonymous namespace)::InvocationToAllListenerMapper::invoke(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<short>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&) ()
at /home/caolan/LibreOffice/core/instdir/program/libsblo.so
#35 0x00007ff072d19921 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*)
(pThis=0xa110b98, nVtableIndex=4, pRegisterReturn=0x7ffdd0d7b5c0, pReturnTypeRef=0xa875c0, bSimpleReturn=false, pStack=0x7ffdd0d7b5e0, nStack=0, pGPR=0x7ffdd0d7b900, pFPR=0x7ffdd0d7b8c0) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77
#36 0x00007ff072d184fc in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**)
(pThis=0xa238bb0, aVtableSlot=..., pReturnTypeRef=0xa875c0, nParams=4, pParams=0x2470e40, pUnoReturn=0x7ffdd0d7bb80, pUnoArgs=0x7ffdd0d7bbb0, ppUnoExc=0x7ffdd0d7bb60) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233
#37 0x00007ff072d17c58 in unoInterfaceProxyDispatch(uno_Interface*, typelib_TypeDescription const*, void*, void**, uno_Any**)
(pUnoI=0xa238bb0, pMemberDescr=0x24c98c0, pReturn=0x7ffdd0d7bb80, pArgs=0x7ffdd0d7bbb0, ppException=0x7ffdd0d7bb60)
at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:413
#38 0x00007ff0472645ca in stoc_invadp::(anonymous namespace)::AdapterImpl::invoke(_typelib_TypeDescription const*, void*, void**, _uno_Any**)
(this=0xa112060, pMemberType=0xa11be80, pReturn=0x7ffdd0d7c4f0, pArgs=0x7ffdd0d7bca0, ppException=0x7ffdd0d7bde0)
at stoc/source/invocation_adapterfactory/iafactory.cxx:457
#39 0x00007ff04726379d in stoc_invadp::adapter_dispatch(_uno_Interface*, _typelib_TypeDescription const*, void*, void**, _uno_Any**)
(pUnoI=0xa118a50, pMemberType=0xa11be80, pReturn=0x7ffdd0d7c4f0, pArgs=0x7ffdd0d7bca0, ppException=0x7ffdd0d7bde0)
at stoc/source/invocation_adapterfactory/iafactory.cxx:605
#40 0x00007ff072d04e95 in cpp2uno_call(bridges::cpp_uno::shared::CppInterfaceProxy*, _typelib_TypeDescription const*, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void**, void**, void**, unsigned long*)
(pThis=0xa11b350, pMemberTypeDescr=0xa11be80, pReturnTypeRef=0x939280, nParams=1, pParams=0xa112460, gpreg=0x7ffdd0d7c520, fpreg=0x7ffdd0d7c540, ovrflw=0x7ffdd0d7c590, pRegisterReturn=0x7ffdd0d7c4f0) at bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:191
#41 0x00007ff072d04611 in cpp_vtable_call(sal_Int32, sal_Int32, void**, void**, void**, sal_uInt64*)
(nFunctionIndex=7, nVtableOffset=0, gpreg=0x7ffdd0d7c510, fpreg=0x7ffdd0d7c540, ovrflw=0x7ffdd0d7c590, pRegisterReturn=0x7ffdd0d7c4f0)
at bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:389
#42 0x00007ff072d29836 in privateSnippetExecutor () at /home/caolan/LibreOffice/core/instdir/program/libgcc3_uno.so
#43 0x00007ff08b903787 in DNDListenerContainer::fireDragOverEvent(com::sun::star::uno::Reference<com::sun::star::datatransfer::dnd::XDropTargetDragContext> const&, signed char, int, int, signed char)
(this=0x5a444c0, context=uno::Reference to ((anonymous namespace)::GtkDropTargetDragContext *) 0xa1dda68, dropAction=1 '\001', locationX=89, locationY=33, sourceActions=3 '\003') at vcl/source/window/dndlistenercontainer.cxx:224
#44 0x00007ff08b900b7d in DNDEventDispatcher::fireDragOverEvent(vcl::Window*, com::sun::star::uno::Reference<com::sun::star::datatransfer::dnd::XDropTargetDragContext> const&, signed char, Point const&, signed char)
(pWindow=0x5a27060, xContext=uno::Reference to ((anonymous namespace)::GtkDropTargetDragContext *) 0xa1dda68, nDropAction=1 '\001', rLocation=Point = {...}, nSourceActions=3 '\003') at vcl/source/window/dndeventdispatcher.cxx:297
#45 0x00007ff08b9007f5 in DNDEventDispatcher::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x1a32c10, dtde=...)
at vcl/source/window/dndeventdispatcher.cxx:178
#46 0x00007ff075f47658 in GtkInstDropTarget::fire_dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x199eb40, dtde=...)
at vcl/unx/gtk3/gtkinst.cxx:1710
Change-Id: I06f24ac50d6d029803d46974162e1afec898d866
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136401
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...as seen during CppunitTest_vcl_pdfexport:
> ==573913==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x62b0001dba0e at pc 0x560576627186 bp 0x7ffeab9fa730 sp 0x7ffeab9f9ef0
> READ of size 26624 at 0x62b0001dba0e thread T0
> #0 in StrtolFixAndCheck(void*, char const*, char**, char*, int) at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:3629:3
> #1 in strtol at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:485:3
> #2 in orcus::sax_token_handler_wrapper_base::attribute(std::basic_string_view<char, std::char_traits<char>>, std::basic_string_view<char, std::char_traits<char>>) at workdir/UnpackedTarball/liborcus/src/parser/sax_token_parser.cpp:344:22
> #3 in orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper::attribute(orcus::sax::parser_attribute const&) at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_ns_parser.hpp:212:27
> #4 in orcus::sax_parser<orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper, orcus::sax_parser_default_config>::attribute() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_parser.hpp:570:15
> #5 in orcus::sax_parser<orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper, orcus::sax_parser_default_config>::declaration(char const*) at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_parser.hpp:389:9
> #6 in orcus::sax_parser<orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper, orcus::sax_parser_default_config>::element() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_parser.hpp:242:13
> #7 in orcus::sax_parser<orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper, orcus::sax_parser_default_config>::body() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_parser.hpp:214:13
> #8 in orcus::sax_parser<orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::handler_wrapper, orcus::sax_parser_default_config>::parse() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_parser.hpp:182:5
> #9 in orcus::sax_ns_parser<orcus::sax_token_parser<orcus::xml_stream_handler>::handler_wrapper>::parse() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_ns_parser.hpp:277:14
> #10 in orcus::sax_token_parser<orcus::xml_stream_handler>::parse() at workdir/UnpackedTarball/liborcus/src/liborcus/../../include/orcus/sax_token_parser.hpp:215:14
> #11 in orcus::xml_stream_parser::parse() at workdir/UnpackedTarball/liborcus/src/liborcus/xml_stream_parser.cpp:68:9
> #12 in orcus::orcus_xls_xml::detect(unsigned char const*, unsigned long) at workdir/UnpackedTarball/liborcus/src/liborcus/orcus_xls_xml.cpp:94:16
> #13 in orcus::detect(unsigned char const*, unsigned long) at workdir/UnpackedTarball/liborcus/src/liborcus/format_detection.cpp:68:9
> #14 in (anonymous namespace)::OrcusFormatDetect::detect(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&) at sc/source/filter/orcus/filterdetect.cxx:83:31
> 0x62b0001dba0e is located 0 bytes to the right of 26638-byte region [0x62b0001d5200,0x62b0001dba0e)
> allocated by thread T0 here:
> #0 in operator new[](unsigned long) at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:98:3
> #1 in SvMemoryStream::AllocateMemory(unsigned long) at tools/source/stream/stream.cxx:1698:12
> #2 in SvMemoryStream::SvMemoryStream(unsigned long, unsigned long) at tools/source/stream/stream.cxx:1544:9
> #3 in (anonymous namespace)::OrcusFormatDetect::detect(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&) at sc/source/filter/orcus/filterdetect.cxx:71:20
This started to occur now after a95c585433246813096e8890b7ed6ef4fe30c621 "Pump
XInputStream into an SvMemoryStream rather than an OStringBuffer" no longer
guarantees that the memory range passed into
orcus::detect(const unsigned char* buffer, size_t length)
is followed by a null byte at buffer[length]. (There appears to be no
documentation for that function, but it looks unreasonable to me that it should
require callers to provide a buffer thus terminated, and I rather assume that
what is observed here is an orcus bug.)
The problematic calls of std::strtol were used in code apparently meant to parse
strings matching the XML VersionNum grammar production, and then store the two
dot-separated numbers each as uint8_t. The new code using a local readUint8
accepts a different set of strings now than the original code using std::strtol,
but the new set is arguably closer to what the actual XML VersionNum grammar
production accepts (which is '1.' [0-9]+ for XML 1.0 and '1.1' for XML 1.1), so
this change should be OK.
Change-Id: I1668542c96ced64667cb9f251e79126e1a54ac30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136405
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
as part of replacing OptValue with std::optional, we need to mimc the
behaviour of std::optional::value(), which will throw
bad_optional_access
Change-Id: Icf5141cefd4623a6a1bb7b3a3449d3af382e01c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136365
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I276896d0ea94e741be8c0ae49f79f95769e0c2a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136234
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Change-Id: I48d173ab697425bcff663f7f7d0bbc404a950bb2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136402
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
The Impress table properties dialog has multiple purposes: normally it
only affects the properties of the currently active cell, but shadow is
applied on the whole shape.
Regression from commit fdeb04f7c59cf8032fe17072ed779e70505cc6ab
(tdf#129961 svx: finish UI for table shadow as direct format,
2020-12-15), we started to apply properties to the current cell, and
then to the whole shape as well, unconditionally. This affects
undo/redo, as there is a separate undo manager while the text edit of a
table cell is active and when the text edit is ended.
Fix the problem by only applying properties on the shape when there we
actually have some properties: this way the text edit is typically not
ended, bringing back the old undo/redo behavior.
Note that we still need to end the text edit if the user explicitly sets
some shadow properties, that part is unchanged with this commit.
Change-Id: I78e28bd326a2c12c3775b33957adca4cd95ac582
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136357
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Ieded279152946830b2619ac80c4a9639d616557a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136398
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I2c005a2f66139237cb1ebf09812f31fb08f53c90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136397
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
See https://crashreport.libreoffice.org/stats/signature/%60anonymous%20namespace'::calcCustomItemSize
Change-Id: I5f1b19b7679c73cf29952629469e5151395b2b12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136254
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
in Show Changes mode.
Follow-up to commit 2413f213625253a9c2b1787b3b9fe859d724a9bd
"tdf#115523 sw_redlinenum: show correct, also original numbering".
Change-Id: Iebf54775f3850e668ac5b12ecbd9f010b4e93ee4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136363
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
* Update helpcontent2 from branch 'master'
to 4943fb359a3209a2a998c442d41dc77972950ae0
- Fix typo
Change-Id: I7c898cbd8890c82c3ebcb0d3d0d4d22096b6f1d4
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136400
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Change-Id: Ieef8f8a079aad7948250ac7d1860b63066df974c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136361
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
When researching <https://gerrit.libreoffice.org/c/core/+/136350> "Make
CppunitTest_svgio CPPUNIT_TEST_NAME=Test::testCssClassRedefinition robust", I
was genuinely puzzled that git treated .svg files as binary data, until I
discovered 93e425cda7b7ea026842bb6619d9aa4ce3280048 ".gitattributes: treat .svg
and .jcs as binary". I don't consider its rationale of "this is apparently the
only way to prevent results from endless base64 encoded lines (svg) [...] in
'git grep foo'" convincing enough, compared to the puzzlement and inconvenience
it causes when you do want to grep for the content of SVG files.
(I didn't experience similar issues with .jcs files, so leave that alone for
now.))
Change-Id: I1b1f4aa92f7a538408e246080cdd415e109d2002
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136351
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
* Update helpcontent2 from branch 'master'
to 68e39672b4fdc9719f2e0a85e83f2d6fff6c180c
- Toc update to document Python resources
Python modules deserve to be highlited:
- scriptforge
- uno
- msgbox
Change-Id: I6d0cad668527b17b1f3ca898d5001768cb30a318
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/135947
Tested-by: Jenkins
Reviewed-by: Alain Romedenne <alain.romedenne@libreoffice.org>
|
|
Allow cursor movement on spaces over margin (or clicking it
it to position the cursor), like MSO does instead of stopping
cursor before the stripped (from the typesetting) spaces.
This way it's possible to follow the modification of these
characters, e.g. removing spaces or inserting other characters
at the cursor position.
Follow-up to commit 8741fd0e0ae9e346de2e09887f0668b831c9b48b
"tdf#43244 sw: show stripped line-end spaces on margin".
Details: extend SwHolePortion to calculate its width,
that can be used for cursor movement, even over the right
margin. Removed some code that not allowed cursor to be
positioned over the right margin. Layout calculation uses
m_nWidth variable (that was 0) to make frames. To keep the
layout unchanged, this new width calculated into m_nExtraBlankWidth temporarily, and this extra width is added to m_nWidth only
after the layout calculation is finished. (Ideally this 2 width
values could be stored and used separately, but that would require
a bigger refactor of the cursor calculation.)
Known regression: lost selection at Search & Replace, e.g. searching
double spaces: there was a narrow selection at end of the line
showing the position.
Other issues: when a different character inserted on the margin
resulting new line break, space formatting marks aren't updated
according to the less spaces. Removing the inserted character by
Backspace results losing of the cursor movement on the spaces.
Co-authored-by: Tibor Nagy (NISZ)
Change-Id: I94b4ed40b8c560e1ef32f4d0d3537e070c08666f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135895
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: Ie04010d3bd0af65bcbb1f8c01a36878b2c9088ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136358
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
Similar to the paragraph styles, export default character
style names instead of the localized ones to avoid e.g. not
interoperable hyperlinks in MSO.
Change-Id: I65678a564ae4e73a1d8319df364defd698381256
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136139
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
|
|
In both cases if ToUpperAsciiOrI18nIsAscii() returned
bAsciiUpper=true or the pCharClass->uppercase() was executed and
its CharClass locale differs from ScGlobal::getCharClass(), the
ScGlobal::getCharClass().uppercase() was executed after. If
pCharClass has the same locale as ScGlobal::getCharClass()
(mbCharClassesDiffer==false) that was executed once. In any case
the result is a ScGlobal::getCharClass() locale's uppercase. Do
that only once.
Change-Id: I1928b73b35b50068f96d809d9fa0734ec80a446d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136353
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
by converting "Slide [digits]" URLs to slide[digits].xml
See also commit 4142d728f003166ebe520bfdaf672505e585b807
"tdf#149314 PPTX import: fix internal hyperlink on texts".
Change-Id: I39e095c960b04e728b3e28fa0a657d37d9c71ba1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135250
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: I8ee9f1a53cc4389e6a4d44e9765b478b5edfffd4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136342
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
* Update helpcontent2 from branch 'master'
to 7a93d6a4ae5adb871cbd7cd54f4cc71fed63e27e
- Fix (BIN|OCT|DEC|HEX)2(BIN|OCT|DEC|HEX) to mention string arguments
... and return types, and also fix the conceptually incorrect examples
Change-Id: I9953d546c0c6ee8f224b866643f6975e538f44f5
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136378
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
* Update helpcontent2 from branch 'master'
to 9a5b8988ad5e005b3a92038d51c6b07c44b7b79c
- Document new ExportRangeToFile method of the Calc service
This patch also clarifies the use of single quotes in sheet names.
Change-Id: I6a0f3b62b74d7443144d7957ae5478196580bec8
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136120
Tested-by: Jenkins
Reviewed-by: Alain Romedenne <alain.romedenne@libreoffice.org>
|
|
Most of the call sites just ignore the fact that we are returning an
optional value here.
Which means that when an attribute is missing, they get an empty string
or zero.
And we seem to be fine with that.
So make a plugin that warns about calling value() on a temporay OptValue.
And add a utility method so we don't have to pay the cost of passing
a default value to getString()
The need for this is driven by wanting to change to std::optional, which
will throw an exception if code attempts to read an empty std::optional
Change-Id: Idb0a5ad1eac66b5caa93d6195928bad9e0b2ad70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136283
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
FindPageFrame might return nullptr
See https://crashreport.libreoffice.org/stats/signature/SwLayoutFrame::GetContentPos(Point%20&,bool,bool,SwCursorMoveState%20*,bool)
Change-Id: Ic69d26de4ab234ebd6283ace640d689f0ebe8eb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136307
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|