Commit Graph
100 Commits
Author SHA1 Message Date
Michael Stahl 2295c2b17c sw, forms: some hacks to nerf time-fields so convwatch works better
This is useful for PDF-based layout-comparison regression testing
where date/time fields were updated upon PDF export and create
lots of false positives. Hopefully these can be eliminated this way,
at least from text documents.

To test:
Download https://bugs.documentfoundation.org/attachment.cgi?id=48452
from tdf#38703 and export it with:

STABLE_FIELDS_HACK=1 instdir/program/swriter --convert-to pdf DeleteStackSample.odt

The date and time fields are now reset to
30/12/1899 00:00:00

Change-Id: Ic89111615074adb50f16a605f920f9a89c437dfd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/24442
Tested-by: Jenkins
Tested-by: Gabor Kelemen <kelemeng@ubuntu.com>
Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
2023-07-24 18:56:40 +02:00
Michael Stahl 21a1267b15 ucb: webdav-curl: NeonLockStore::stopTicker(): really avoid deadlock
Follow up on 68ba2785c5, which missed the
sad fact that m_aMutex is locked recursively.

Avoid that by passing a ClearableMutexGuard to stopTicker() and
unlocking that.  Also lock m_aMutex in the destructor while at it.

[ port of commit 13b60fd80a ]

Change-Id: I65bb4ec98f13d28089c3b2eb3300074944024188
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123181
Tested-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-11-01 18:24:26 +01:00
Michael Stahl d2e66d2c10 ucb: webdav-curl: NeonLockStore::stopTicker(): avoid deadlock
Tor reports that NeonLockStore::stopTicker() m_pTickerThread->join()
can deadlock with TickerThread running NeonLockStore::refreshLocks().

This can be avoided by copying m_pTickerThread to the stack, and
releasing the m_aMutex before calling join().

[ port of commit 68ba2785c5 ]

Change-Id: I6d2d993fd5315f27e6559a1e9034e961303fe894
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123180
Tested-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-11-01 18:24:01 +01:00
Michael Stahl ad6286ce92 gbuild: allow recording of CppunitTests and PythonTests too
Since these don't use soffice they need to be tweaked to use RR variable.

A rr git master build from some weeks ago can record all tests, except
CppunitTest_dbaccess_firebird_test which fails.

smoketest is a bit tricky because it spawns soffice which checks RR
variable again and starts a nested rr, but fortunately there's a
flag to prevent it from aborting in this situation.

For UITests currently only the soffice.bin is recorded, not the python
test process.

The size of all the recording is about 35G per run in a --enable-dbgutil
build.

Change-Id: I2143618fa2181e36b6aaeded43637cb3481f5e47
Reviewed-on: https://gerrit.libreoffice.org/60032
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Michael Stahl <Michael.Stahl@cib.de>
2018-09-05 16:01:07 +02:00
Michael Stahl aa02205fc4 configure,pyuno: require at least Python 2.7
Nobody needs to use 2.6 any more, so reduce the maintenance burden.

https://lists.freedesktop.org/archives/libreoffice/2018-March/079670.html

Change-Id: I101e26fbceffbe6119f4a6484530f27760b03eb4
Reviewed-on: https://gerrit.libreoffice.org/50816
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Jenkins <ci@libreoffice.org>
2018-04-09 10:32:47 +02:00
Michael Stahl 5e18136a01 forcepoint #3: sw: don't do section-in-table splits when this is table
The problem with the bugdoc is that SwFrame::GetNextSctLeaf() creates a
follow frame for a section in a table, and puts it outside the table,
below the page's body frame, while moving text frames that have the
mbInfTab flag set into the follow frame.

The situation is different from forcepoint #18 though: the frame "this"
is a SwTabFrame here, and GetNextCellLeaf() *does* return a plausible
looking follow cell frame, however it's ignored later because
CanContainSplitSection(this) is false since it's a SwTabFrame.

IIRC table-in-section-in-table should not be split anyway, so
just add a check here and return early.

(regression f8a76d2183)

Revert "forcepoint #3"
This reverts commit 34627ad7d0
because it was just a work-around not to crash with the invalid table
frames.

Change-Id: I54692a67edade23c6b8e0a9be806728b0012a3fd
Reviewed-on: https://gerrit.libreoffice.org/51751
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-26 16:17:31 +02:00
Michael Stahl 8f0f5353b0 sw: more tweaks to sanity check in SwFrame::GetNextSctLeaf()
* ooo50432-1.sxw has a move from a page with columns to a page without
columns
* kde327565-1.odt has a move from a page without columns to a page with
columns
* novell348228-1.odt has a section inside a fly frame that has no
mpUpper

Change-Id: I65afbbad7bb1b7aa3bf7cac8ff78e864adf66c3c
Reviewed-on: https://gerrit.libreoffice.org/51572
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Jenkins <ci@libreoffice.org>
2018-03-19 21:28:54 +01:00
Michael Stahl 98d767dfb9 curl: upgrade to release 7.59.0
Just for the record, the CVEs don't affect LO because RTP/RTSP/LDAP
are disabled and FTP UCP doesn't use CURLFTPMETHOD_SINGLECWD.

Change-Id: Ib3872aab9592c2388ee4fd03c3a3113cb2e69b59
Reviewed-on: https://gerrit.libreoffice.org/51539
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-19 13:08:56 +01:00
Michael Stahl 7a342988e0 sw: tweak sanity check in SwFrame::GetNextSctLeaf()
An additional way in which column sections are a special case is if
"this" is the SwBodyFrame inside the SwColumnFrame; handle this too.

Happens in ooo31607-2.sxw.

Change-Id: Id07b76e67c34b2335f2802f52e215d37476b3446
2018-03-15 20:25:36 +01:00
Michael Stahl 0d6ffe118f xmloff: ODF import: improve meta:generator checks
Instead of a hard-coded check for (effectively) one project name
"LibreOffice" (which is build-time configurable), check for the string
"LibreOffice_project", which has been produced hard-coded ever since
LO 3.3.0.

This now recognises additional downstreams "LibreOffice_Vanilla"
and "Collabora_Office", and also historic "BrOffice".

An important point here is that the build-time configurable version
numbers of any downstream that retains the hard-coded
"LibreOffice_project" *MUST* be the same as the upstream's at least
in their major and minor versions (micro and further digits are
currently not used), and that such downstreams don't backport
changes with ODF export compatibility impact further than upstream.

Add a unit test too, with a representative sample of 4372 distinct
generators in bugzilla attachments.

This revealed that StarOffice 6 and AOO 4.0.1 were falling through
the cracks and not recognised, so fix that too.

Change-Id: I8105222d3428e7b20cc4a6b8e76732c697812594
Reviewed-on: https://gerrit.libreoffice.org/51171
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-14 08:59:38 +01:00
Michael Stahl fd67ee14e7 tdf#91106 sfx2: Stylist hierarchical: sort the Default Style first
(regression from 41af2a9e26)

Change-Id: I47377447dd1e04a44033dea27ce7307a65821737
2018-03-13 22:44:06 +01:00
Michael Stahl bd23e1dd6b sw: try to fix Android build, use printf macro
Change-Id: I94208553c7678d9d108ec3f76decc3c38d69802e
2018-03-13 20:57:40 +01:00
Michael Stahl 226ec5aebb vcl: race in OSX SalYieldMutex::doRelease
m_nCount must be accessed with m_aMutex locked.

Change-Id: I7e05cac2b549b975804d6061721c1da4d0b9f64e
Reviewed-on: https://gerrit.libreoffice.org/50236
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-13 17:14:16 +01:00
Michael Stahl b718c29265 solenv: the installer's -b parameter is unused
"build" is hard-coded to "majorminor0".

Change-Id: I15271544917f70b8ae029bd7542aecfe0a46befe
2018-03-12 21:50:32 +01:00
Michael Stahl 396f085610 solenv: installer's -m parameter & globals::minor & PRODUCTMINOR unused
Change-Id: I2f550ca5b02551b84d3631e0101918af49924fe2
2018-03-12 21:50:32 +01:00
Michael Stahl 36b23fdd94 solenv: LAST_MINOR is effectively dead
Change-Id: I07d90c68934712295952e6e6725e0206c16a5b7e
2018-03-12 21:50:32 +01:00
Michael Stahl 5d710cf7dd VCL canvas: fix clipping of gradients (related: tdf#115142)
When using the presenter console, the secondary screen has
a small view of the current slide, which is called a "Pane" in sdext.

Clipping for this is done by sd::presenter::PresenterCanvas, which wraps
the full-screen VCL canvas and has a MergeViewState() to intersect
the clip region.

The VCL canvas has a bug in its gradientFill() implemenation where it
overrides the existing clip on the OutputDevice instead of intersecting
it.

This properly fixes the bug that was wrongly and badly attempted
to be fixed by commit 99e373cd4c.

Change-Id: Id02678c2f134fe7b190866d6a6fff5b2e5e3aaff
2018-03-07 13:08:19 +01:00
Michael Stahl 0408a59031 tdf#115142 Revert "slideshow: clip shapes in secondary screen window"
This reverts commit 99e373cd4c.

This is bogus as it actually does scaling and not clipping, and the
actual clipping bug is in the VCL canvas, see following commit.

Also should fix tdf#115652 and tdf#116196.

Change-Id: Ief7be653a38626c9902ab5c7c453a133c2b9f882
2018-03-07 13:08:18 +01:00
Michael Stahl df4bbaecec sdext: document the secondary screen of Presenter Console
Change-Id: I539a698994b5fa20e3d371ae56d9aaf3001dba2b
2018-03-07 13:08:18 +01:00
Michael Stahl 1615d0eb28 sw: add some sanity check to SwFrame::GetNextSctLeaf()
Check that the parents of the section follow frame are the same type as
the parents of the original section frame.

Change-Id: I9845e48834d57b8a93f9b850cb89b6c5544d9ab2
Reviewed-on: https://gerrit.libreoffice.org/50807
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-07 09:05:02 +01:00
Michael Stahl f775b5427b libxml2: upgrade to release 2.9.8
Change-Id: Ic6802c16b740f6aee59ae2f74b7edcd37461f1f3
Reviewed-on: https://gerrit.libreoffice.org/50835
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-06 18:48:10 +01:00
Michael Stahl 1eda4a770a sw: convert that to assert too
Change-Id: I4f06fc4871cbb92b40d950b31a06b5e185aed321
Reviewed-on: https://gerrit.libreoffice.org/50806
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-06 14:07:37 +01:00
Michael Stahl eef36faf5d sw: convert checks about mbInfTab and cell parent to assert()
Change-Id: Ia9e517936d546f60f76ae99062ff57a09209dc8a
Reviewed-on: https://gerrit.libreoffice.org/50805
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-06 12:59:50 +01:00
Michael Stahl 054be0850e forcepoint #18 sw: fix condition for detecting section-in-table splits
The problem with the bugdoc is that SwFrame::GetNextSctLeaf() creates a
follow frame for a section in a table, and puts it outside the table,
below the page's body frame, while moving text frames that have the
mbInfTab flag set into the follow frame.

Checking for CanContainSplitSection() at this point doesn't make sense
to me: if it's not allowed to split the section, we can't just split it
anyway and put the follow outside the table.

Just removing it fails in testTableInNestedSection() but it turns out
that the problem there is that the mbInfTab flag is set on a outermost
SwTabFrame itself, so we need to check the parent's flag instead to
check if this frame needs to go into a cell.

(regression from 652556ec3e)

Change-Id: I79663391fb1b2cb10f008676feb01a2607cfb33d
Reviewed-on: https://gerrit.libreoffice.org/50804
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-06 12:53:16 +01:00
Michael Stahl f5850c7841 sw: convert DELETEZ to unique_ptr in edlingu.cxx
Change-Id: I7af773aec20d23b925a90eade56452e8aed93b5b
Reviewed-on: https://gerrit.libreoffice.org/50623
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-02 19:56:51 +01:00
Michael Stahl dab9a2b60a sw: convert DELETEZ to unique_ptr in paintfrm.cxx
This will now delete these globals on shutdown, hopefully it's only
relatively primitive types...

Change-Id: Ib7a4bb4507da500e1eb1bb69876bb6d670d99cd4
Reviewed-on: https://gerrit.libreoffice.org/50624
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-02 16:56:31 +01:00
Michael Stahl 1bd9fcafe6 tdf#115429 sax,xmloff: assert on empty attribute names & namespaces
Surely that's indication of a bug somewhere.

Change-Id: Ic6219d8eb7f22301d8c4da98b2132ae3ef0467b5
Reviewed-on: https://gerrit.libreoffice.org/50579
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-02 09:51:55 +01:00
Michael Stahl 0a1d5af2a1 tdf#115429 sax: assert if exporting an invalid XML attribute/element
Add a cheap check for this in both SaxWriter and FastSaxSerializer
so we can find such bugs earlier, e.g. with the weekly crashtesting.

Don't do a correct check but a cheap & fast one, let's ignore
non-ASCII characters for now as the only filter with such is UOF
and that is implemented with XSLT, not this sax code.

Change-Id: I4db8f70ffb23684d4cb4211468519edd6c7c465f
Reviewed-on: https://gerrit.libreoffice.org/50507
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-01 20:58:27 +01:00
Michael Stahl 700ed27678 tdf#115429 xmloff: ODF import: fix handling of unknown attributes
... in SvXMLLegacyToFastDocHandler::startElement(), so that it does not
create invalid "-1" tokens that end up stored as empty-string
attribute names in SvXMLAttrCollection and ultimately exported
as invalid XML.

The maName in struct UnknownAttribute actually stores a QName,
i.e. namespace-prefixed, since commit
bb59a80ee6.

The attributes are read and converted again in
SvXMLImportContext::startUnknownElement().

Change-Id: Ia69a4da293f1a84ce30766abc09ca19e2620edbd
Reviewed-on: https://gerrit.libreoffice.org/50580
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-01 20:58:09 +01:00
Michael Stahl 0efd06de8f vcl: fix hangs in SvpSalInstance
Since commit cb8bfa9a32 the main thread
will read from the timer pipe until it is empty. But evidently this
introduces the problem that the poll() in another thread will not
return, as the file descriptor will no longer be readable; see
https://paste.debian.net/1011306/ for a reproducer of that rather
under-documented poll behaviour.  So other threads can get stuck
forever in poll, and then the main thread can block in poll too with
no other thread to wake it up.  This is the problem that plagues
UITest_writerperfect_epubexport.

The timer pipe is difficult to fix, since the main thread can block on
either the poll or the subsequent AcquireYieldMutex().

So replace the timer pipe with a condition etc. that is mostly
copied from the OSX AquaSalInstance/SalYieldMutex implementation.

The main thread now does something different than the other threads,
and blocks on a condition_variable with a timeout, while other
threads still block on acquiring the mutex.

Non-main threads can poke the main thread to do a DoYield()
on their behalf, and then get the result back with a blocking
read from a pipe, all while holding the YieldMutex.  This
requires some fudging of the YieldMutex so that the main
thread can borrow the ownership temporarily.

Unfortunately SvpSalInstance, in addition to being directly
instantiable for --headless, has a whole bunch of subclasses:

* HeadlessSalInstance
* AndroidSalInstance
* IosSalInstance
* GtkInstance (in the gtk3 case)
* KDE5SalInstance

Of these GtkInstance overrides everything related to the
DoYield/SalYieldMutex implementation, but the others will be
affected by the change.

This commit will probably break IOS due to me not understanding the
point of the undocumented random #ifdef IOS in svpinst.cxx.

Change-Id: I1bbb143952dda89579e97ac32cd147e5b987573c
Reviewed-on: https://gerrit.libreoffice.org/50237
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-26 13:44:00 +01:00
Michael Stahl 81e4be9cd3 gpgmepp,xmlsecurity: fix testODFEncryptedGPG() failure caused...
...by CppunitTest setting LD_LIBRARY_PATH to include instdir/program.

This causes the spawned gpg-agent to load instdir/program/libassuan.so.0
instead of /usr/... and fail with:

writev(2, [{iov_base="gpg-agent", iov_len=9}, {iov_base=": ",
 iov_len=2}, {iov_base="relocation error", iov_len=16}, {iov_base=": ",
 iov_len=2}, {iov_base="gpg-agent", iov_len=9}, {iov_base=": ",
 iov_len=2}, {iov_base="symbol assuan_sock_set_system_ho"...,
 iov_len=118}, {iov_base="", iov_len=0}, {iov_base="", iov_len=0},
 {iov_base="\n", iov_len=1}], 10) = 159

The failure happens in the libreoffice-6-0 branch on Fedora 27, whereas
the master branch doesn't fail because it has a newer version of
libassuan that happens to provide the required symbol.

Fix this by applying the patch that was added for ASAN in
d15f042abd to clear LD_LIBRARY_PATH
always on Linux.

Change-Id: I6a5c7fdfdd32234f39a182581b03d79739880c11
Reviewed-on: https://gerrit.libreoffice.org/50056
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-20 20:54:32 +01:00
Michael Stahl 5f43662365 sw: DELETEZ to unique_ptr in DocumentLinksAdministrationManager
Change-Id: I428848c48c2d265e82db9d3666492d50b01a221d
2018-02-20 12:57:12 +01:00
Michael Stahl bd9dfec214 sw: DELETEZ to unique_ptr in SwTextFootnote
Change-Id: Ibd0a566dffca40da37727421c54b50e1d834ef3d
2018-02-20 12:57:12 +01:00
Michael Stahl 29b34d1700 sw: convert DELETEZ to unique_ptr in SwViewShellImp
Change-Id: If5c26f1a7892368c244f4d46aab7d36a22c83504
Reviewed-on: https://gerrit.libreoffice.org/49991
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-20 10:24:11 +01:00
Michael Stahl 76d5b9d0cf sw: convert DELETEZ to unique_ptr in SwTextNode
Change-Id: I0df469be660c20513f82b465412ffcf31b0a0f63
Reviewed-on: https://gerrit.libreoffice.org/49990
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-20 10:23:53 +01:00
Michael Stahl 665e646c3b sw: convert DELETEZ to unique_ptr in authfld.cxx
Change-Id: Ic37556a95b31308a7f88a1074c2c1cba30d47cd0
Reviewed-on: https://gerrit.libreoffice.org/49988
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-20 10:23:11 +01:00
Michael Stahl 713ac313c1 svx: fix deadlock in Gallery::GetGalleryInstance()
Seen in UITest_writer_tests.

Use C++11 thread-safe static initialisation here, which should
avoid the deadlock that is caused by relying on
osl::Mutex::getGlobalMutex().

Thread #1:

2  in osl_acquireMutex(oslMutexImpl*) (pMutex=0x1ad2c70) at sal/osl/unx/mutex.cxx:97
3  in osl::Mutex::acquire() (this=0x7ff3252b9628 <rtl::Static<osl::Mutex, (anonymous namespace)::theImplHelperInitMutex>::get()::instance>) at include/osl/mutex.hxx:56
4  in osl::Guard<osl::Mutex>::Guard(osl::Mutex&) (this=0x7ffca8bdd6c0, t=...) at include/osl/mutex.hxx:129
5  in cppu::getTypeEntries(cppu::class_data*) (cd=0x7ff31e458fe0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSink>, com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSink>::operator()()::s_cd>) at cppuhelper/source/implbase_ex.cxx:89
6  in cppu::queryDeepNoXInterface(typelib_TypeDescriptionReference const*, cppu::class_data*, void*) (pDemandedTDR=0x2e643b0, cd=0x7ff31e458fe0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSink>, com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSink>::operator()()::s_cd>, that=0x387cbe0) at cppuhelper/source/implbase_ex.cxx:173
[...]
20 in utl::UcbStreamHelper::CreateStream(rtl::OUString const&, StreamMode) (rFileName="file://instdir/program/../share/gallery/sounds.thm", eOpenMode=StreamMode::READ) at unotools/source/ucbhelper/ucbstreamhelper.cxx:149
21 in GalleryTheme::CreateThemeEntry(INetURLObject const&, bool) (rURL=..., bReadOnly=false) at svx/source/gallery2/galtheme.cxx:692
22 in Gallery::ImplLoadSubDirs(INetURLObject const&, bool&) (this=0x38762c0, rBaseURL=..., rbDirIsReadOnly=@0x7ffca8bde7df: false) at svx/source/gallery2/gallery1.cxx:474
23 in Gallery::ImplLoad(rtl::OUString const&) (this=0x38762c0, rMultiPath="file://instdir/program/../share/gallery;file://workdir/UITest/writer_tests/user/user/gallery") at svx/source/gallery2/gallery1.cxx:301
24 in Gallery::Gallery(rtl::OUString const&) (this=0x38762c0, rMultiPath="file://instdir/program/../share/gallery;file://workdir/UITest/writer_tests/user/user/gallery") at svx/source/gallery2/gallery1.cxx:257
25 in Gallery::GetGalleryInstance() () at svx/source/gallery2/gallery1.cxx:273
26 in GalleryExplorer::BeginLocking(unsigned int) (nThemeId=3) at svx/source/gallery2/galexpl.cxx:264
27 in SvxBmpNumValueSet::init() (this=0x3873ed0) at svx/source/dialog/svxbmpnumvalueset.cxx:501

Thread #8 Grammar Checking:

2  in osl_acquireMutex(oslMutexImpl*) (pMutex=0x7ff329045420 <globalMutexImpl>) at sal/osl/unx/mutex.cxx:97
3  in osl::Mutex::acquire() (this=0x7ff32903b780 <osl_getGlobalMutex::globalMutex>) at include/osl/mutex.hxx:56
4  in osl::Guard<osl::Mutex>::Guard(osl::Mutex*) (this=0x7ff2f5b30030, pT_=0x7ff32903b780 <osl_getGlobalMutex::globalMutex>) at include/osl/mutex.hxx:122
5  in com::sun::star::container::cppu_detail_getUnoType(com::sun::star::container::XEnumeration const*) () at workdir/UnoApiHeadersTarget/udkapi/comprehensive/com/sun/star/container/XEnumeration.hpp:69
6  in cppu::UnoType<com::sun::star::container::XEnumeration>::get() () at include/cppu/unotype.hxx:296
7  in cppu::detail::cppu_detail_getUnoType<com::sun::star::container::XEnumeration>(com::sun::star::uno::Reference<com::sun::star::container::XEnumeration> const*) () at include/cppu/unotype.hxx:259
8  in cppu::UnoType<com::sun::star::uno::Reference<com::sun::star::container::XEnumeration> >::get() () at include/cppu/unotype.hxx:296
9  in com::sun::star::reflection::detail::theXTypeDescriptionEnumerationType::operator()() const (this=0x7ff2f5b30177) at workdir/UnoApiHeadersTarget/udkapi/comprehensive/com/sun/star/reflection/XTypeDescriptionEnumeration.hpp:30
10 in rtl::StaticWithInit<com::sun::star::uno::Type*, com::sun::star::reflection::detail::theXTypeDescriptionEnumerationType, com::sun::star::reflection::detail::theXTypeDescriptionEnumerationType, com::sun::star::uno::Type*>::get() () at include/rtl/instance.hxx:603
11 in com::sun::star::reflection::cppu_detail_getUnoType(com::sun::star::reflection::XTypeDescriptionEnumeration const*) () at workdir/UnoApiHeadersTarget/udkapi/comprehensive/com/sun/star/reflection/XTypeDescriptionEnumeration.hpp:57
12 in cppu::UnoType<com::sun::star::reflection::XTypeDescriptionEnumeration>::get() () at include/cppu/unotype.hxx:296
13 in com::sun::star::reflection::XTypeDescriptionEnumeration::static_type(void*) () at workdir/UnoApiHeadersTarget/udkapi/comprehensive/com/sun/star/reflection/XTypeDescriptionEnumeration.hpp:102
14 in cppu::getTypeEntries(cppu::class_data*) (cd=0x7ff3252b8ac0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::reflection::XTypeDescriptionEnumeration>, com::sun::star::reflection::XTypeDescriptionEnumeration>::operator()()::s_cd>) at cppuhelper/source/implbase_ex.cxx:96

Change-Id: I3aa3167ca8989b3d6be053e1c97f3b7a64bfbfb8
Reviewed-on: https://gerrit.libreoffice.org/49986
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-20 10:21:29 +01:00
Michael Stahl e1082e4536 setup_native: remove {un,}install_solaris.sh
These scripts were never shipped to end users (the corresponding
install_linux.sh was only added to the instset in LO times,
see 117b3242db) but were used
by QA and developers to install multiple Solaris builds
as non-root using getuid.so.

But the "archive" installation set can be used for the
same purpopse and doesn't require a custom script.

Change-Id: I665277bef7c5ddd58e798f5f1b1c6a97a0f3cfc5
2018-02-15 22:29:24 +01:00
Michael Stahl 20cf158b85 sdext: disable the warnings TWICE because they're sneaky bastards
Let's hope this will finally work, it was like this before commit
4e102d6a4b

Change-Id: I6337d4f1abc386e71747b2a37e55a3578bcbf340
2018-02-15 20:58:36 +01:00
Michael Stahl ebbae6a1f5 sdext: MSVC 2015 is trash
Change-Id: I8549b52417520c0fe52977137fc570d65b0800fc
2018-02-15 20:25:04 +01:00
Michael Stahl 764e4a4cd3 sdext: if all else fails USE BIGGER HAMMER
Change-Id: I83803461310580c47886322e20c0949a371a0407
2018-02-15 17:11:23 +01:00
Michael Stahl 7e241cda12 sdext: suppress another MSVC warning
Somehow a8ea79b10b caused another warning
to appear in the MSVC 2015 that is used in jenkins builds.  Whyever.

Change-Id: Iba73de5739078972129d0a2de7d8a6437c12b2e0
2018-02-15 17:00:06 +01:00
Michael Stahl a8ea79b10b sdext: disable MSVC 2017 warnings from boost headers
Change-Id: I6eb816f155a222ca4299fd425c79d38bf2d464dc
2018-02-15 15:57:48 +01:00
Michael Stahl 21c3a446cc sw: replace DELETEZ with unique_ptr in SwUndoSplitNode
Change-Id: Iaac10057c7be6f49bc5930725dffa7884c35d814
2018-02-15 15:57:48 +01:00
Michael Stahl 0310430ed0 sw: replace DELETEZ with unique_ptr in SwXFrame
Change-Id: I93043bd17a685a82f9365c3eeb27d4288291e2f3
Reviewed-on: https://gerrit.libreoffice.org/49731
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-15 15:54:51 +01:00
Michael Stahl 1c8efde4da tdf#83260 sw: call CompressRedlines() in ODF import
It's possible that an ODF document contains redlines that will be
deduplicated by CompressRedlines().

If that happens during some editing operation, then a SwRedline
will be deleted and the nodes array becomes smaller by at least 3
nodes; any Undo actions that were created prior to the operation
that called CompressRedlines() will store invalid node indexes now
and Undo will crash.

So presumably it's a precondition of editing operations
that CompressRedlines() is a no-op.

Interestingly CompressRedlines() is also called from
SwEditShell::Undo()/Redo().

Ensure it's a no-op later by calling CompressRedlines() immediately
after load.

(Hopefully this should also work for the Insert File case.)

Add a test too.

Change-Id: Iec8135cc60260ed5cfff05a196b5c92cc03265f9
Reviewed-on: https://gerrit.libreoffice.org/49721
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-15 09:56:55 +01:00
Michael Stahl 0b574c7315 sw: replace DELETEZ with unique_ptr in SwUndoInsert
Change-Id: I127eba390068ba241ff2b67e2bc99f3b907195db
Reviewed-on: https://gerrit.libreoffice.org/49675
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-14 10:13:52 +01:00
Michael Stahl c77429bc28 sw: replace DELETEZ with unique_ptr in SwUndoSaveSection
Change-Id: Ic57736a6d1349574f779afc26b8785caf575cf06
Reviewed-on: https://gerrit.libreoffice.org/49674
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-14 10:12:54 +01:00
Michael Stahl f311dc973e sw: convert DELETEZ to unique_ptr in SwDoc
Change-Id: Ice9957fefea98a878281f64ab129a452a31f27bb
Reviewed-on: https://gerrit.libreoffice.org/49668
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-14 10:11:44 +01:00
Michael Stahl 306cd912b5 svl: clear temporary copies of passwords in SvlPasswordHelper
This is an obvious place to start, but there might be more copies
elsewhere.

Change-Id: I3c3ea6cb54f40fe5c21c3128b55aeaad1ff74b42
Reviewed-on: https://gerrit.libreoffice.org/49669
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-14 10:11:11 +01:00
Michael Stahl 8bd6f83741 svx: fix crash caused by SdrEdgeObj::Notify() not noticing dying object
This can be reproduced by exporting tdf97737-2.odt to DOCX.

Change-Id: I710f8961568aeb5a64fb39eff7c1e3540cbf4976
2018-02-08 16:52:28 +01:00
Michael Stahl 398275ba9f tdf#115483 svl xmloff sc sw: verify all ODF 1.2 protection-key hashes
ODF 1.2 has added some mandatory requirements for protection-key hashes
which did not exist in ODF 1.1.

This affects sections and indexes in ODT documents, as well as
spreadsheets and sheets in ODS documents.

1. Accept the following hashed passwords:
    * UTF16 LE/BE encoded StarOffice-SHA1, OOo legacy and allowed by ODF 1.1
    * UTF8 encoded proper SHA1, as required by ODF 1.2
    * UTF8 encoded SHA256, as required by ODF 1.2
        - specified either with the wrong URL used in the ODF 1.2 spec
          or the correct URL from the W3C spec, see OFFICE-3702
    * Excel+SHA1 double-hash, only in Calc, see OFFICE-2112

2. Round-trip any of the above as-is
    * for SHA256 only write the URL from the ODF 1.2 spec

3. Generate only UTF16 LE encoded SHA1 for now, so that older LO
   releases can still verify the password
    * some time in the future, switch to generating some valid ODF 1.2 hash

More changes are necessary in Calc, which can actually preserve
different hashes for the same passwords in its runtime data model,
whereas Writer just has a single buffer without even any metadata.

For the Calc unit tests we need one document per hash because the
protection-key attribute can be set on the entire spreadsheet, which
is an unique element in the document.

There are further uses of SvlPasswordHelper for change-tracking passwords,
but apparently those are stored in settings.xml, so ODF has no
requirements for them, so let's leave that as it is.

Change-Id: Icb720b14ae9c0d9c04d2e082769ae2b74e3af8aa
Reviewed-on: https://gerrit.libreoffice.org/49352
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-07 18:03:09 +01:00
Michael Stahl 6394c89fbb vcl: adapt README to reality 2018-02-07 14:07:37 +01:00
Michael Stahl a0d533af0c check-elf-objects: add mergedlib libs for Linux-rpm_deb-x86_64@70-TDF
Change-Id: I7b0febee10a98809073f0bfd023d39d32684a566
2018-02-06 14:06:06 +01:00
Michael Stahl 7bf0b99736 check-elf-objects: add 32-bit libs for Linux-rpm_deb-x86@71-TDF-dbg
Change-Id: Ibd308d94c7cd92ab5e2590554b54517d2ef898fe
2018-02-06 12:18:17 +01:00
Michael Stahl b2a053160c sw: disable testTableKeep on WNT
Fails from time to time, like so:
https://tinderbox.libreoffice.org/cgi-bin/gunzip.cgi?tree=MASTER&brief-log=1517842001.29090#err2

Change-Id: Ia33193fbfa05da58d31bcc5008beea32c1feb2fe
2018-02-05 16:54:05 +01:00
Michael Stahl 49696161be postprocess: enable the check-elf-dynamic-objects for real
Change-Id: Ie08d3dfc6306c18da7b1a5c000a75a18917c1f70
Reviewed-on: https://gerrit.libreoffice.org/45529
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-05 16:52:28 +01:00
Michael Stahl 3c280b7235 sw: convert some SAL_WARN to assert in SwCache
Change-Id: Id148253a2f2c60912cbfbe9628f5ddec56a48952
Reviewed-on: https://gerrit.libreoffice.org/49165
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-05 10:54:56 +01:00
Michael Stahl c7f74bbab4 sw: disable ooxmlexport testWatermark on WNT
This one tends to fail quite a bit in CI builds, at least on Windows,
most recently in
https://tinderbox.libreoffice.org/cgi-bin/gunzip.cgi?tree=MASTER&brief-log=1517580416.5910

Change-Id: I243b317fb27c51d06fbddf085713e51734eae27a
2018-02-02 21:05:09 +01:00
Michael Stahl 1e9716fded sw: remove very dubious DBG_UTIL code
This looks like some defensive programming to avoid a crash only in
DBG_UTIL mode, which is a pretty moronic thing to want to do.

Change-Id: I93c791a76cf9114359be3fef6b604c86ec49da51
2018-02-02 21:05:09 +01:00
Michael Stahl 7f34c1a719 sw: convert OSL_ENSURE to assert() in SwCache
Change-Id: I66075a8f77a3b399116ddd0493037c1427dfd7d2
Reviewed-on: https://gerrit.libreoffice.org/49153
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-02 21:06:06 +01:00
Michael Stahl 269d6d3366 ofz#5435 sw: fix SwCache::Insert() stale pointers
If SwCache::Insert() happens to delete the object that m_pFirst or
m_pRealFirst point to, which is unlikely as it means every other object
is locked, then these pointers must be updated.

This sometimes happens in the bugdoc after scrolling around for some
time.

Change-Id: I13f04d28c37969469efa4e1109c7f5b751ceba96
Reviewed-on: https://gerrit.libreoffice.org/49151
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-02 18:30:24 +01:00
Michael Stahl 21d664e987 ofz#5435 sw: fix crash during painting of excessively nested tables
Could not find a single instance where the return value of
SwCacheAccess::Get() was actually checked, so let's have
SwCache::Insert() automatically resize the cache, since it starts
out with just 100 capacity; also, check that the size doesn't overflow.

Change-Id: I3cd7cf2aea79e01816b12e4dbaf79c3bf82bf8fe
Reviewed-on: https://gerrit.libreoffice.org/49140
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-02 18:30:07 +01:00
Michael Stahl 00a6f0908a sc: disable "forecast.ets.add.fods" test file on Macs
This sometimes fails, since months, and nobody has fixed it.
Let's improve the reliability of CI a bit.

Change-Id: Ic4d2e085151855d35804f8ed6ebca04366815c0b
Reviewed-on: https://gerrit.libreoffice.org/49144
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-02 16:12:04 +01:00
Michael Stahl 87115c67c3 sw: replace DELETEZ with std::unique_ptr in textapi.cxx
Change-Id: I4e4eaa67995a4a8041ab701e02984aa2fb0d349e
Reviewed-on: https://gerrit.libreoffice.org/49118
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-02 10:54:36 +01:00
Michael Stahl 5357ca8284 tdf#114815 pyuno: avoid 2 threads initing python in parallel
According to the crash reports, it's possible for the grammar checking
thread to call GetGrammarChecker, instantiating lightproof, at the same
time as the main thread instantiates LngSvcMgr, which also instantiates
(some?) (all?) grammar checkers.

Ensure that pyuno_loader::CreateInstance() initialises Python only
once with a C++11 thread safe static.

Change-Id: I5b1faba9107355c508831a078366e4a29fdbfadf
2018-02-01 20:11:37 +01:00
Michael Stahl 2a94fddcc8 sw: convert DELETEZ to std::unique_ptr in SwXFrame
Change-Id: I1aa9d0fc8712773ea87ea8419c384f6f23258387
2018-02-01 15:00:47 +01:00
Michael Stahl 696568099b sw: convert DELETEZ to std::unique_ptr in SwUndoTableNumFormat
Change-Id: Ia1123e2b5f4b3bb2d827d2cdbeff485c3c2a56da
Reviewed-on: https://gerrit.libreoffice.org/49080
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-01 14:14:28 +01:00
Michael Stahl e2d0e55918 sw: convert DELETEZ to std::unique_ptr in unodraw.cxx
Change-Id: I89aaf157ded42ea3e968c706e4431f03d8f19ed7
Reviewed-on: https://gerrit.libreoffice.org/49078
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-02-01 14:14:13 +01:00
Michael Stahl e80da60895 tdf#114596 compilerplugins: add exception to [loplugin:refcounting]
Change-Id: I994653dc4bf858bdea7ba60f40da0ee3c8d028e4
2018-01-31 17:53:40 +01:00
Michael Stahl 96ae2a3300 tdf#114596 dbaccess: fix mysterious dataloss bug
OBookmarkContainer actually re-uses the reference count of
ODatabaseSource, so converting ODatabaseSource::m_aBookmark to Reference
created a cycle, which somehow causes the dataloss, because evidently
something as important as storing the data must be done in the
destructor.

(regression from 2660d24a07)

Change-Id: I4cad01dc9cdaf405c1eb31d6c0e161eb6712b78f
2018-01-31 14:38:53 +01:00
Michael Stahl 61535f9b8a sw: speed up SwpHints::Check() by 2x
It's only necessary to compare each pair of nesting hints once.

Change-Id: I221bb0d63ffaf3d748b934788f93afe0f65ed961
2018-01-29 20:03:22 +01:00
Michael Stahl 88fe1bb839 xmloff: add a comment too
Change-Id: Ic23c36250938009b17f4b916f0d13a097d018a0c
2018-01-29 10:41:37 +01:00
Michael Stahl 17d7f29710 sw: remove misleading comment from SwUndoSaveContent::DelContentIndex()
"Directories" weren't handled in the initial CVS import already.

Change-Id: Ic96921d8e3e8aa5a5e65e07391236f0a7747c867
2018-01-26 15:00:14 +01:00
Michael Stahl 55650f65de xmloff: ODF export: don't write LO_EXT attribute unless ODF expended
The loext namespace is not defined when exporting standard ODF
versions, which triggers an assert() in SvXMLNamespaceMap.

(regression from 4469b29fae)

Change-Id: Ic93fb0ea8fe092463d3fd18a0fbf4429d8652642
2018-01-26 14:59:27 +01:00
Michael Stahl 0628693eaf sw: try to limit rowspan/colspan attributes a bit
Not sure what would be a reasonable maximum, but this should at least
limit fuzzing to 64k cells at a time.

Change-Id: I03c8f828be7ca2d5caeb1f318b55e25ab3f528ef
Reviewed-on: https://gerrit.libreoffice.org/48589
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-01-25 21:31:07 +01:00
Michael Stahl 26d34f319b sw: fix some bug in SwTOXBaseSection::UpdatePageNum()
Looking at UpdatePageNum_ it's fairly obvious that the 2 vectors aNums
and aDescs have to be in sync, but aNums is cleared after each iteration
while aDescs is not.

Change-Id: I41d8a8df5c4c3ae51aa5ea89c21b01651af5651c
2018-01-25 19:47:45 +01:00
Michael Stahl 38af1bb52d sw: de-pointerise local variable in SwTOXBaseSection::UpdatePageNum()
Change-Id: I24fcde19ae94cc5a278da6d88e72ce6a57a64951
2018-01-25 19:47:44 +01:00
Michael Stahl 7dbe76266c sw: convert SwDoc::mpDBManager to unique_ptr
Very odd things are happening in dbmgr.cxx to override this member,
so add a 2nd member that points to the DBManager that is actually used.

Change-Id: If5d4ea1e4951a0406fddcb71302c53ee7b37a34e
2018-01-25 19:47:44 +01:00
Michael Stahl 61e0488088 sw: uninitialised DocumentRedlineManager::bHideLinineTooltips
(regression from 86e3f95cff)

Change-Id: I48db6f070d7cf5ef0071952ad34822f75d472a21
2018-01-25 12:38:10 +01:00
Michael Stahl 5e3799a0c8 curl: upgrade to release 7.58.0
* fixes 2 CVEs
* disable some new optional dependencies

Change-Id: If7725d126e68de04b67969a83c0ea08573a43679
Reviewed-on: https://gerrit.libreoffice.org/48493
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-24 21:15:59 +01:00
Michael Stahl b7f12d8fd7 tdf#115153 the missing test document
Change-Id: I74724ba61aadfad19501a87ab548219ea0a1f236
2018-01-24 17:19:35 +01:00
Michael Stahl dc16cc0492 tdf#115153 writerfilter: RTF import: fix vert orient of Word 6 shapes
The bugdoc is affected by the change of default vertical alignment;
apparently it's not even possible to set the vertical alignment of a
Word 6 drawing object (\do) so we have to set the Word default.

(regression from c79467ba95)

Change-Id: I4084a7a7e2a55f864cb569e04632e034d59eefdb
2018-01-24 17:07:51 +01:00
Michael Stahl 81a1882d62 configure: if WiLangId.vbs isn't found but is required, error out
Change-Id: I8a145c1024a522a17c6ac2bf961cb4f07f3e7be9
2018-01-23 21:53:19 +01:00
Michael Stahl 112c931ff3 configure: find WiLangId.vbs where SDK 10.0.16299.0 hides it
Change-Id: I71d27f3f97e257b4e45261004088ce3435f82090
2018-01-23 21:53:18 +01:00
Michael Stahl dba57e8db1 svx::frame::Style::operator< does not implement strict weak order
... at least since other single line styles than SOLID and DASHED
were added some years ago.

This causes an assertion from MSVC std::max in CppunitTest_sw_odfexport.

Change-Id: I2e0833b3d5c5afab259108be1c8782c4c4d26978
2018-01-23 21:53:18 +01:00
Michael Stahl 8b1a83bffe ofz#5566 sw: HTML import: ignore <DIV> in table structure elements
Looking at the HTML4 DTD https://www.w3.org/TR/html4/sgml/dtd.html,
inside TABLE only various elements defining the structure of the table
allowed, except inside cells (TD and TH elements).

DIV in a table but outside cells may cause cursor positions to go
off the rails, so better ignore such invalid DIV tags.

Change-Id: Ia6195d80670631669c252d572242874b13642b74
Reviewed-on: https://gerrit.libreoffice.org/48359
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-01-23 09:56:11 +01:00
Michael Stahl 61c88ae694 gbuild: always compile as C++17 with MSVC 2017
The current update MSVC 2017.5 supports fancy new C++ features, but
unfortunately in its default C++14 mode it falls over and dies with
an internal compiler error as soon as it sees the WeakImplHelper
variadic template.

In order to work around the ICE, build everything as C++17,
which somehow doesn't crash.

This causes loads of deprecation warnings about obsolete std::this
and badly designed std::that, almost all of them from boost headers,
which are well known for following every best practice in the C++ book.

Liberally sprinkle macros around to suppress the warnings for now,
like we already do with the other million warnings from boost headers.

Change-Id: Ia6b6ef5e457b5fe3c8cfe361ba5da39376bb7c4c
Reviewed-on: https://gerrit.libreoffice.org/48225
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 20:08:05 +01:00
Michael Stahl 0b1f8cb4a7 sw: add an assert wrt. recent bug in SwHTMLParser::SplitAttrTab()
Change-Id: I1fa64beb4724675c2e23bd5d4f0766f6d4cf7873
2018-01-22 19:55:12 +01:00
Michael Stahl d26ba19006 sc: std::iterator is deprecated in C++17
Change-Id: I947dcf61e95bdc68d19eab7daca4c31ba8047d5e
Reviewed-on: https://gerrit.libreoffice.org/48224
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 12:48:48 +01:00
Michael Stahl d68df7842d chart2: std::iterator is deprecated in C++17
And it's immediately obvious why, if you look at the elegant and concise
replacement code that doesn't trigger deprecation warnings.

Change-Id: Ie4b3ca83951a89f7ac4d172086c23c7457087ba3
Reviewed-on: https://gerrit.libreoffice.org/48223
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 09:34:48 +01:00
Michael Stahl 67c11b0398 vcl: various std::*::result_type deprecated in C++17
Use decltype instead, to prevent MSVC 2017.5 warnings.

Change-Id: I760659837e34eb2dc2a3293c43e7f29725b515d6
Reviewed-on: https://gerrit.libreoffice.org/48221
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 09:34:09 +01:00
Michael Stahl 0a0cf00b17 C++17 deprecated std::shared_ptr::unique()
Most of these calls are in assertions, and the ones that aren't should
be guarded by SolarMutex, so the thread safety concerns that caused
unique() to be deprecated don't look relevant, so use use_count(),
which oddly enough isn't deprecated.

Change-Id: Ia166615af6c3ce85145c391752669c7461bd35fb
Reviewed-on: https://gerrit.libreoffice.org/48222
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 09:32:52 +01:00
Michael Stahl 41abd684a6 boost: upgrade to release 1.66.0
This claims to support Visual Studio 2017.4, but not the current
2017.5.

* remove boost.auto_link.patch; it does not apply; not sure why we
  need this if we can just define BOOST_ALL_NO_LIB
  (see commit 7f2e168421)
* remove some hunks from clang-cl.patch.0 that look fixed upstream
* add a global workaround for spurious GCC warning:
  oox/source/drawingml/shape.cxx:921:54: error:
  ‘oShadowColor.boost::optional_detail::tc_optional_base<int>::m_storage’
  may be used uninitialized in this function
  [-Werror=maybe-uninitialized]
                           aFormat.Color = *oShadowColor;

Change-Id: I1eb1d8b66554a84a7d7269f1faaa98695fe2f501
Reviewed-on: https://gerrit.libreoffice.org/48187
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-22 09:32:33 +01:00
Michael Stahl 2a055c0538 scp2: also try VC141_CRT_*.msm
Apparently the MSMs have been renamed in Visual Studio 2017.3 but only
configure was adapted, not scp2.

Not sure if these MSMs are still relevant given the new
gid_File_Vcredist_Exe thing.

Change-Id: I4fe27c8298b3a2024acc62d12ce8ea67e2eca80d
2018-01-19 21:53:07 +01:00
Michael Stahl c799f159c5 firebird: recognise MSVC 2017.5 (which defines _MSC_VER=1912)
Change-Id: Ic526bc3babfd342fd2ebb10003639d600a668ae5
2018-01-19 21:53:07 +01:00
Michael Stahl 0c3838bd08 fix libxml2 dependency on icu
liblangtag build runs a "reg2xml.exe" which requires the ICU dlls in
instdir.

Change-Id: Icf44c51e802636de613f76a25fb16a567a8d982d
2018-01-19 21:53:07 +01:00
Michael Stahl b4a7cd3014 gbuild: disable gb_COLOR on WNT for now
The Cygwin terminal swallows colorful error messages, which is unhelpful.

Change-Id: I2005994eb76fdba1dc49efc2988e38ac460d6724
2018-01-19 21:53:07 +01:00
Michael Stahl eb98ae7c9b sw: loplugin:unreffun
HTMLTable::FixFillerFrameFormat is unused now.

Change-Id: Ic09d9585368ead7317325068eabb0171b76b6a9b
2018-01-19 13:36:53 +01:00
Michael Stahl a86db7b2b6 sw: HTMLTable::m_pTopTable is always "this"
Ever since commit cc144e5544 fix for
i#76959 the pTopTable parameter of HTMLTable was always null.

Simplify HTMLTable by removing dead code.

Change-Id: Ie13313f54d6ee656e56a209bc29bcc77132de269
2018-01-19 10:02:41 +01:00