When loading a ODT template via HTTP, it crashes LO with an
lang::IllegalArgumentException in LockFileCommon::ResolveLinks.
This happens when closing the loaded template, as LO tries to
remove a not-existing lock. aDocURL at this point is empty, so
HasError() is true.
As stated in the comment, we don't need a lock for documents
created from templates, as this opens an internal copy of the
document, so don't mark the teplate document as locked.
Change-Id: Ide60020b6287aa67861dbcc8ec1b94f37896b7ef
Reviewed-on: https://gerrit.libreoffice.org/42485
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
...and thus exporting osl::Guard<comphelper::SolarMutex> members from vcl. With
--disable-pch that caused linking Library_acc to fail with duplicate symbols, as
accessibility/source/standard/vclxaccessiblebutton.cxx uses
comphelper::OExternalLockGuard (include/comphelper/accessiblecontexthelper.hxx),
which also derives from osl::Guard<comphelper::SolarMutex> (and is also all-
inline, and not marked as DLLPUBLIC), so also emits such members. With
--enable-pch, vclxaccessiblebutton.cxx happens to see SolarMutexGuard from
include/vcl/svapp.hxx before comphelper::OExternalLockGuard, and thus doesn't
emit any such members.
As SolarMutexGuard is all-inline, there should not be much point in making it
VCL_DLLPUBLIC in the first place (was there ever since the class's introduction
in b450a32890 "create a class SolarMutexGuard to
take a Guard on the SolarMutex"), so just drop that.
Change-Id: Ie9d493370c7d34981bb35e5d9e100cf987eb83ca
Reviewed-on: https://gerrit.libreoffice.org/42616
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
That was a dead end anyway, trying to partly reimplement
SvFilterOptionsDialog ExportDialog, instead of implementing the
necessary bits to use that one which has everything.
Change-Id: Icde7422f2c2d7e26c07dfe921a4abda41e222b09
Reviewed-on: https://gerrit.libreoffice.org/42503
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
Fixes the "Multiple timers in queue" assertion by effectively
removing it.
When debugging it became obvious, that PostMessage returns, even
if the message was not yet added to the message queue.
The assert happens, because we start the timer in the Scheduler
before Invoke(), so it fires, if we block in Invoke(), and then
reset the timer after Invoke, if there were changes to the Task
list.
In this case it fires during Invoke(), the message is added. We
restart the timer, first by stopping it (we wait in
DeleteTimerQueueTimer, to be sure the timer function has either
finished or was not run). And the try to remove the message with
PeekMessageW, which doesn't remove the posted message.
Then the timer is restarted, and when the event is processed, we
end up with an additional timer event, which was asserted.
As a fix this adds a (microsecond) timestamp to the timer message,
which is validated in the WinProc function. So if we stop the
timer too fast, the event is ignored based on the timestamp.
And while at it, the patch moves timer related variables from
SalData into WinSalTimer.
Change-Id: Ib840a421e8bd040d40f39473e1d44491e5b332bd
Reviewed-on: https://gerrit.libreoffice.org/42575
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
And while moving it, get rid of the 'drawinglyer::tools' subnamespace.
Less potential confusion with the global 'tools' namespace.
Change-Id: Iab3c25be0cec7f3d182228d122837e9f2ac9a529
Reviewed-on: https://gerrit.libreoffice.org/42619
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>
This reverts commit cd2725de90.
Norbert's list of CI performance issues includes
"2/ clang plugin build should not be serialized (forced -j1)"
Change-Id: Ib77f951a31adc20f6a9f88e8b51632bd81273327
Reviewed-on: https://gerrit.libreoffice.org/42595
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
- tracking the error state in a bool
- which gets pushed by reference to subfunctions
- and signals back error state from a bazzilion different location
- in a long operation that is not grouped into one undo
- and then haphazardly triggers an indiscriminate Undo
- and in addition throws an excpetion
More likely than not leaves the client with an undefined half-reverted
state, which an impossible situation to properly recover. This either
has to be done properly or not at all.
Change-Id: I677f87e78c32f4d93c8d21e9df7130a2595da891
Reviewed-on: https://gerrit.libreoffice.org/42510
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
Since SbaTableQueryBrowser::implSelect returns a bool to indicate if everything is ok,
should return false when we entered in a catch
Change-Id: I9ae3ff3bf082278edb16a9b91701d6cf457e7179
Reviewed-on: https://gerrit.libreoffice.org/42564
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
there are only "Descriptors".
Patch by: me
(cherry picked from commit ccc4532f9ed95f4460941e2762ae3250d37805f5)
Change-Id: Ifd4f34c7b1ba64b449222dc864a38df80f4c6727
Reviewed-on: https://gerrit.libreoffice.org/42535
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>