summaryrefslogtreecommitdiff
path: root/include/sal
AgeCommit message (Collapse)Author
2017-10-27Remove some old KDE3 and TDE stuffJan-Marek Glogowski
Both VCL plugins are long gone. We currently just keep the desktop detection. Generally fall back to gtk in VCL detection. Change-Id: I35830868cb75d16ae7b90b20df699929cefa4636 Reviewed-on: https://gerrit.libreoffice.org/43940 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-10-26tdf#111486 Fix description of SAL_ macros after EMF+ refactorBartosz Kosiorek
Change-Id: If235956228d7f807817d9ffff3da652bd6485ffa Reviewed-on: https://gerrit.libreoffice.org/43834 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
2017-10-25kde5: rename classes and other relevant data: KDE[4]->KDE5Katarina Behrens
add log area too Change-Id: I187c04c8646ec9c9264d84938e1ccf3a1cbd62f1
2017-10-23loplugin:includeform: UNO API include filesStephan Bergmann
Change these back to consistently use the "..." form to include other UNO API include files, for the benefit of external users of this API. Change-Id: I9c9188e895eb3495e20a71ad44abfa2f6061fa94
2017-10-13sw dbg_lay: make it easer to match log entries with code locationsMiklos Vajna
Also warn when logging stops due to a limit, not because the layout finished. Change-Id: Ifd44901602edec001839ab4ee88f459b45e36da6 Reviewed-on: https://gerrit.libreoffice.org/43362 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-10-05Rename and move SAL_U/W to o3tl::toU/WMike Kaganski
Previosly (since commit 9ac98e6e3488e434bf4864ecfb13a121784f640b) it was expected to gradually remove SAL_U/W usage in Windows code by replacing with reinterpret_cast or changing to some bettertypes. But as it's useful to make use of fact that LibreOffice and Windows use compatible representation of strings, this commit puts these functions to a better-suited o3tl, and recommends that the functions be consistently used throughout Windows-specific code to reflect the compatibility and keep the casts safe. Change-Id: I2f7c65606d0e2d0c01a00f08812bb4ab7659c5f6 Reviewed-on: https://gerrit.libreoffice.org/43150 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-10-02lok - sc: row/column headers are updated fasterMarco Cecchetti
Now the computation of the row/column headers data exploits the cached row/col positions in HeightHelper/WidthHelper. That makes updating row/column headers at the bottom of the document as fast as at the top even for very big spreadsheets. Change-Id: I27381b520aaed68662e4d07c5879046d182c70e6 Reviewed-on: https://gerrit.libreoffice.org/40451 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
2017-10-02lok - sc: document size as sum of row heights/col widths in pixelMarco Cecchetti
Grid lines, cursor overlay, row/col headers are all computed by summing up row heights / col widths converted to pixels. On the contrary the document size was converted to pixel only at the end after having summed up heights/widths in twips. All that lead to have a document height/width greater than the position of the last row/col, with the scrolling in online going unplesantly far beyond the last row/column. This patch change the way the document size is computed, so that the spreadsheet height/width matches the position of the last row/column. Moreover it exploits the cache-like structure for row/col positions introduced in a previous commit. Change-Id: Ibb2cc6a7b592e359a0b1202dc9bea1dd4c421354 Reviewed-on: https://gerrit.libreoffice.org/40448 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
2017-10-02lok - sc: a cache-like structure for row/col positions in the documentMarco Cecchetti
ScPositionHelper provides the ability to insert (and remove) row- position pairs where the position is in pixel and related to the spreadsheet top. In this way one can compute a new row position by starting from the nearest row presents in this cache-like data structure. It offers also the ability to invalidate the cache by removing all cached data below a given row or position. This data structure can be used for columns, too. Change-Id: Ifd66a003680ef9a3babf46ae952221c04451be9a Reviewed-on: https://gerrit.libreoffice.org/40447 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
2017-10-02lokdialog: Better dialog rendering APIPranav Kant
After painting the dialog, also write width and height of the rendered dialog. The dialog is rendered always on the top left of the given canvas, so client can crop the canvas accordingly. Change-Id: If052058a6db8a85d4e28ec88cffcca05564b17f0
2017-09-19sal: fix numerous doxygen warningsMichael Stahl
Change-Id: I2fd3fb7b67a62d349ff917466b08c75c19dcbff6
2017-09-19Assert active Tasks on scheduler de-initJan-Marek Glogowski
This shuts down the VCL scheduler later in the DeInitVCL call and asserts active pending tasks, as these will never be processed after shutdown. There is currently a TODO whitelist, so the unit tests still pass but probably most of these should be fixed. No task in the list looks critical - all seem to do some idle / cleanup work. This also processes all the Idles before shutdown. All seem to be of type sfx::SfxItemDisruptor_Impl. Change-Id: I9cc484a525cc2bacd54c4f271f86997517393e92 Reviewed-on: https://gerrit.libreoffice.org/40533 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-09-19PDF signing: don't fail unittest on invalid certificatesMike Kaganski
Without this, expired/not yet valid certificates, as well as certificates without private key, make test needlessly fail. Change-Id: Ic8ff85db54f1f1b1fb49fde82424f597f1555c96 Reviewed-on: https://gerrit.libreoffice.org/42434 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-09-13sax: allow some debug logging in FastParserMichael Stahl
Multi-threading makes this difficult; have it print synchronously where it is in the input when setting: SAL_LOG="+INFO.sax.fastparser+WARN" SAX_DISABLE_THREADS=1 Change-Id: I8c77974acb2b4d4e273fc9c0f273c345d8feb2ff
2017-09-06Clean up sal/backtrace.hxxStephan Bergmann
Change-Id: Id78e9c0ca29ff2e52591f3d446431ac23c20ab7a Reviewed-on: https://gerrit.libreoffice.org/41926 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-03Fix leak BacktraceState (enable-dbgutil)Julien Nabet
buffer is created from sal/osl/unx/backtraceapi.cxx with: 70 auto b1 = new void *[maxDepth]; 71 int n = backtrace(b1, static_cast<int>(maxDepth)); 72 return std::unique_ptr<BacktraceState>(new BacktraceState{ b1, n }); and from sal/osl/w32/backtrace.cxx with: 79 auto pStack = new void *[maxDepth]; 80 // https://msdn.microsoft.com/en-us/library/windows/desktop/bb204633.aspx 81 // "CaptureStackBackTrace function" claims that you "can capture up to 82 // MAXUSHORT frames", and on Windows Server 2003 and Windows XP it even 83 // "must be less than 63", but assume that a too large input value is 84 // clamped internally, instead of resulting in an error: 85 int nFrames = CaptureStackBackTrace( 0, static_cast<ULONG>(maxDepth), pStack, nullptr ); 86 87 return std::unique_ptr<BacktraceState>(new BacktraceState{ pStack, nFrames }); Introduced with: https://cgit.freedesktop.org/libreoffice/core/commit/?id=bc9a2ba677ce3fcd46c2bbef6e8faeacb14292c1 Change-Id: Iea0528f5d2b38ff1f3dc4bd50ff035bb100ab981 Reviewed-on: https://gerrit.libreoffice.org/41854 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-01Fix typosAndrea Gelmini
Change-Id: I4496faa9ce7cad393bf06ca789099b045aea2741 Reviewed-on: https://gerrit.libreoffice.org/41785 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-16assert on duplicate listener in SfxListenerNoel Grandin
To enable finding the source of the duplicate calls, I add new SAL API (only for internal use) to retrieve and symbolise stack backtraces. The theory is that it relatively cheap to just store a backtrace, but quite expense to symbolise it to strings. Note that the backtrace() library we use on Linux does not do a particularly good job, but it gives enough information that developers can use the addr2line tool to get more precise info. Explanation of fixes in the code that triggered the assert: In SwFrameHolder, we need to only call StartListening() if the pFrame member is actually changing. We also need to call EndListening() on the old values when pFrame changes. In SwNavigationPI, there is already a StartListening() call in the only place we assign to m_pCreateView. In ImpEditEngine, we need to ignore duplicates, because it is doing a ref-counting thing. By storing duplicates on the listener list, it doesn't need to keep track of which stylesheets its child nodes are using. Given that it therefore will see duplicate events, there is probably some performance optimisation opportunities here. In MasterPageObserver::Implementation::RegisterDocument, we seem to be getting called multiple times with the same SdDrawDocument, so just check if we've been registered already before calling StartListening() In SvxShape::impl_initFromSdrObject, do the same thing we do elsewhere in this class, i.e. only call StartListening() if the model has changed. Change-Id: I7eae5c774e1e8d56f0ad7bec80e4df0017b287ac Reviewed-on: https://gerrit.libreoffice.org/41045 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-10xmlsecurity: Log unknown xml elements for ooxmlSamuel Mehrbrodt
Change-Id: I0daf81ac91da1d6206282e486298d059b937bb21 Reviewed-on: https://gerrit.libreoffice.org/40819 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-08-10Sort list lexicographicallyStephan Bergmann
Change-Id: Ib52b66544cd3f0bed1742369404eced28b8b5904
2017-08-10Remove excess SAL_INFOsStephan Bergmann
Change-Id: I21aa7c7878c4ec1371cec4738d2482cc101020a1
2017-08-09SAL_RETURNS_NONNULL: handle old clang not understanding returns_nonnull attrMiklos Vajna
Seen on the macOS baseline. Change-Id: Ibfd4a848b2f31bb782a83c523c72ccf7de4e0e6d Reviewed-on: https://gerrit.libreoffice.org/40902 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-17cppu: remove unnecessary LOG_LIFECYCLE_* macrosChris Sherlock
Change-Id: I0f19cf7045e6ff2906404a73ce710e42800c0a72 Reviewed-on: https://gerrit.libreoffice.org/39994 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-07-17connectivity: add initial writer backendMiklos Vajna
Similar to the calc one. As a first step the Driver and the Connection interfaces are implemented, though the later has some stubs. Change-Id: Id043f7742fdb2006d4f88526ef4d055a6d8dee82 Reviewed-on: https://gerrit.libreoffice.org/40033 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-15svl: move byte-array signing from vclAshod Nakashian
Signing a generic byte-array can (and will be) used by more than the existing PDF signing code, hence the move into comphelper from vcl and ourside of the PDF-specific logic. Change-Id: I7257b5218c6ba37960c6a013746eb387917a23a4 Reviewed-on: https://gerrit.libreoffice.org/39717 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2017-06-23simplify some string handling in tracing callsNoel Grandin
Change-Id: I0fb76562429e691400a02216019c7f96791cf9b3 Reviewed-on: https://gerrit.libreoffice.org/39159 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-21gpg4libre: initial GPG signature validationThorsten Behrens
Change-Id: I80afd77f74a6cb3f3fb7da03a6a4b74b132360d2
2017-06-06add COVERITY_NOEXCEPT_FALSECaolán McNamara
to markup dtors that coverity warns might throw exceptions which won't throw in practice, or where std::terminate is an acceptable response if they do Change-Id: I32b94814e8245372e1d1dc36be0d81e3564042f4 Reviewed-on: https://gerrit.libreoffice.org/38318 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-05-30and fix my previous commitNoel Grandin
Change-Id: I63a22d5cf7a45d7b6fb3d1b356aa98ff954449e5
2017-05-30define SAL_RETURNS_NONNULL as LIBO_INTERNAL_ONLYNoel Grandin
and improve the comment Change-Id: I832fa0133810fee920024e7df9ff3c5c1c335582
2017-05-28remove unnecessary use of OString::getStrNoel Grandin
Change-Id: I0490efedf459190521f4339854b3394d57765fdb Reviewed-on: https://gerrit.libreoffice.org/38058 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-26create SAL_RETURNS_NONNULL annotationNoel Grandin
and apply it to some methods in OString and OUString Change-Id: I30e91f961b6d310799d3641f68b7ed54b3080f3a Reviewed-on: https://gerrit.libreoffice.org/38020 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-05connectivity: convert the other OSL_ENSURE to SAL_WARN_IFMichael Stahl
Change-Id: Ie3d84129b73792e1f129d65350bf0e1455b08566
2017-04-21gbuild: Remove MSVC 2013 legacy codeDavid Ostrovsky
Uwinapi is discontinued. Change-Id: I063b4d0d8fab2d60de168e960a63b8181158ac01 Reviewed-on: https://gerrit.libreoffice.org/23198 Reviewed-by: David Ostrovsky <david@ostrovsky.org> Tested-by: David Ostrovsky <david@ostrovsky.org>
2017-04-14remove the old collaboration feature based on telepathyMarkus Mohrhard
Change-Id: I1f08d6ef43b76e7bae41ac33bb954f506ae7c485 Reviewed-on: https://gerrit.libreoffice.org/36542 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2017-04-10Keep list sortedStephan Bergmann
Change-Id: I34fd3ed006bdcecbe8b7e1f17cb379242a5eef95
2017-04-10loplugin:sallogareasNoel Grandin
Change-Id: I382360e7756c8e0afa47c6bc96dfc04fec558a45
2017-04-04Finally switch MSVC to sal_Unicode = char16_t, tooStephan Bergmann
There is lots of (Windows-only) code that relied on sal_Unicode being the same as wchar_t, and the best change may be different in each case (and doing the changes may be somewhat error prone). So for now add SAL_U/SAL_W scaffolding functions to sal/types.h, remove their uses one by one again, and finally drop those functions again. Change-Id: I2cc791bd941d089901abb5f6fc2f05fbc49e65ea Reviewed-on: https://gerrit.libreoffice.org/36077 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-04-04Keep list sortedStephan Bergmann
Change-Id: I680be319b6c2d87a8fba0e07a3b24d0a2ed478b7
2017-04-03sw: [loplugin:sallogareas]Michael Stahl
Change-Id: I94c552e4b2ae95f57b0c667f6072664eab570042
2017-03-25Fix typosAndrea Gelmini
Change-Id: I998e9b2ad8ebdcc983239192cb61f6689e378ad9 Reviewed-on: https://gerrit.libreoffice.org/35633 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-24Better check for 'defined LIBO_INTERNAL_ONLY'Stephan Bergmann
(to avoid warnings about undefined macros in external code) Change-Id: Ie1007207b22c19a3d9d96f0f94070c32d417595a
2017-03-07loplugin:loopvartoosmallStephan Bergmann
Change-Id: Ia8c57fb69873d57c3271a8f6d497fecec3db1899
2017-03-03[API CHANGE] Remove SAL_CONSTEXPR againStephan Bergmann
...now that LIBO_INTERNAL_ONLY always has constexpr support. It had been added for LO 5.0 (effectively always expanding to nothing for !LIBO_INTERNAL_ONLY), not wrapped in '#if LIBO_INTERNAL_ONLY' presumably because it was assumed to be used freely in URE include files, but turned out to be only used in LIBO_INTERNAL_ONLY code. It is unlikely that any 3rd party code made use of it. Change-Id: I68970c5a2e2d7ef68ac5b79efc8dc1de54c43198
2017-03-02Remove HAVE_CXX11_CONSTEXPR, always true nowStephan Bergmann
...after 84b36c704d73362d4d86dc9e9c0efa0625958347 "Drop support for MSVC 2013". Make this a fatal configuration error for now. The check should be removed completely after LO 5.4 branch-off. Change-Id: I990fd8fcb4ec1327282df4efe21640c938d3cf06 Reviewed-on: https://gerrit.libreoffice.org/34821 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-28loplugin:sallogareasStephan Bergmann
Change-Id: I9af09bc52775501c8dbf0e883f4ec3b53c397de4
2017-02-21Kill bitrot Emscripten experimentKhaled Hosny
Change-Id: I1cd5331157e684afb01e6555168ce646194c6ff2 Reviewed-on: https://gerrit.libreoffice.org/34493 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2017-02-11Remove comment that is no longer accurate/relevantStephan Bergmann
...after e16fa715c43dcdf836ce8c400b6d54eae87b627d "Handle wchar_t as native C++11 type on windows" Change-Id: I8005a48a43f1baba3c04c11ff52d26d756f25204
2017-02-10Remove MinGW supportStephan Bergmann
In OOo times, there'd originally been efforts to allow building on Windows with MinGW. Later, in LO times, this has been shifted to an attempt of cross- compiling for Windows on Linux. That attempt can be considered abandoned, and the relevant code rotting. Due to this heritage, there are now three kinds of MinGW-specific code in LO: * Code from the original OOo native Windows effort that is no longer relevant for the LO cross-compilation effort, but has never been removed properly. * Code from the original OOo native Windows effort that is re-purposed for the LO cross-compilation effort. * Code that has been added specifially for the LO cross-compilation effort. All three kinds of code are removed. (An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing --with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.) Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568 Reviewed-on: https://gerrit.libreoffice.org/34127 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-09Some clean upStephan Bergmann
No more need to call sal_detail_log_report from sal_detail_log, now that it is called from SAL_DETAIL_LOG_STREAM since b3a11c8f4f307bbbb597c9c6e7e61ee93e794873 "tdf#91872: Make SAL_INFO and friends more efficient". Change-Id: Idb6cf7a4814abe29d5ba68591f39b4279267bc9b