summaryrefslogtreecommitdiff
path: root/include/sal
AgeCommit message (Collapse)Author
2022-03-28Drop support for OpenGL denylist on X11Stephan Bergmann
...which appears to have become even less relevant with db89f53c31af997b9bf422b0e784afba8d62a42e "remove OpenGL VCL backend code". And the vcl/unx/glxtest.cxx machinery that it is based on is (a) known to cause issues like <https://gitlab.freedesktop.org/mesa/mesa/-/issues/3957> "LibreOffice's OpenGL version detection code hangs when running inside a flatpak container with a different mesa version", and (b) is one of the two reasons why an soffice that uses Wayland nevertheless also requires Xwayland during startup (the other reason being oosplash). So getting rid of the glxtest machinery is beneficial. The remaining two potential uses of OpenGL on X11/Wayland are the obscure css.rendering.SpriteCanvas.OGL service implementation (about which db89f53c31af997b9bf422b0e784afba8d62a42e states that "it seems has never been finished or enabled (or so it most probably should be dumped too)") and some slideshow transitions. About the latter, Caolán stated on IRC: "I think we grew this set of stuff to check for dodgy opengl primarily for the case where vcl used opengl for ordinary UI optimizations; but I think that use is gone now so I wonder does it make sense to just drop all of that entirely; for just slide transitions we apparently survived fine without the denylist for ages". (And in any case there is still the WatchdogThread support with OpenGLZone::hardDisable in VCLExceptionSignal_impl, vcl/source/app/svmain.cxx, should any OpenGL code run into problems.) (The removal of gb_LinkTarget_use_glxtest from gb_LinkTarget_use_vclmain, which indirectly brought in gb_LinkTarget_use_libraries,*,vcl, revealed that an explicit use of vcl was missing from various Executables etc., which thus had to be added now.) Change-Id: Ifa5220fd09910a4459ca546d9655e479a2e38f1e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131943 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-03-08Drop some debug codeStephan Bergmann
...that had been introduced with 7e8e85adbee73346403c364326544487677cd5c6 "Add codeSnippet debugging output when dbglevel>1" and reinforced with 6f121860d0537060084278da11842732a748d6b7 "tdf#130924 replace debugging printf calls with SAL_INFO/SAL_WARN" Change-Id: I9529bfdedd3d1a3dd623fdb28e01d6bd96c92d97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131169 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-03-05tdf#130924 replace debugging printf calls with SAL_INFO/SAL_WARNpragat-pandya
Change-Id: Iaef5eec6508d031ab711a71c0d8ecebb18112ef6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130764 Tested-by: Luboš Luňák <l.lunak@collabora.com> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-18first cut at using Gtk4 built in video playbackCaolán McNamara
Change-Id: Ib996cd3f5ddbf20a81cdbe4b1c6546d6df478fde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129783 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-31support for the WebP image format (tdf#114532)Luboš Luňák
This commit implements a WebP reader and writer for both lossless and lossy WebP, export dialog options for selecting lossless/lossy and quality for lossy, and various internal support for the format. Since writing WebP to e.g. ODT documents would make those images unreadable by previous versions with no WebP support, support for that is explicitly disabled in GraphicFilter, to be enabled somewhen later. Change-Id: I9b10f6da6faa78a0bb74415a92e9f163c14685f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128920 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-01-19WASM optionally run any app via system loopJan-Marek Glogowski
Allows LO to run via system event loop instead of having an own one and processing system events as needed. Needed for WASM, so the browser isn't blocked, as there is no way to run the browser mainloop from WASM. Generally an alternative to running LO in a WebWorker and communicating to some frontend. Change-Id: I24955638827f3b8c04240845ffc781cd28f2aa29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128602 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-09Replace single sw.level2 log area user with area swJan-Marek Glogowski
Change-Id: I3df5c5f937361a7a0283a05a7b9c6669bb404c1e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128183 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-11-10Add SAL_INFO of what paper sizes the printer (driver) advertisesTor Lillqvist
Change-Id: I9598a829c22cc4d02244fff6616584aa6dbac68e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124916 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-11-01ucb: webdav-curl: implement CurlUri, partially based on SerfUriMichael Stahl
The curl_url* functions exist since 7.62.0 and CURLOPT_CURLU since 7.63.0. Change-Id: I8bc766221636eb3ff0d33ae5a90d00c1bc7ecd7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122046 Tested-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-11-01Add SAL_DEBUG_IFJan-Marek Glogowski
Change-Id: If2452cd4bad7266e7e07baaea26c58ef26ead5f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124509 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-10-22qt: Adapt log area: "vcl.qt5" -> "vcl.qt"Michael Weghorn
And also: "vcl.opengl.qt5" -> "vcl.opengl.qt" Change-Id: I86f8a34cb8c1303a81ffbf40c801ba628f3fa0d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124065 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2021-09-30loplugin:sallogareas (clang-cl)Stephan Bergmann
Change-Id: I6a529d2eb737d284bf1e9c1857680c33581f5e0e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122846 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-06-11"drawinglayer" -> "drawinglayer.emf" log area for some emf codeLuboš Luňák
Change-Id: I83fa2d40225f83b82cea7f8934f4afdee181abe3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117000 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-05-19tdf#142326: Adapt to "libstdc++: Implement LWG 1203 for rvalue iostreams"Stephan Bergmann
...for libstdc++ 11.2, similar to 1f3dddd6f21d91c429190ae314dadeec409f35f4 "Adapt to "libstdc++: Implement LWG 1203 for rvalue iostreams" for libstdc++ 12. The libstdc++ change referenced there has been backported to the releases/gcc-11 branch past the releases/gcc-11.1.0 tag (i.e., only towards libstdc++ 11.2) as <https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=ca7d2f2ec9142995179a5d832a946b50de05e659> "libstdc++: Implement LWG 1203 for rvalue iostreams". According to <https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_macros.html>, <https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html#abi.versioning.__GLIBCXX__>, and <https://gcc.gnu.org/develop.html#timeline>, the right __GLIBCXX__ value for libstdc++ 11.1 should be 20210427, but at least libstdc++-devel-11.1.1-1.fc34.x86_64 defines it as 20210428 while not including the above "libstdc++: Implement LWG 1203 for rvalue iostreams" commit, so use that value here. Change-Id: I4e2c6d6ad8156a83f5c4bc861e4a118271928a20 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115738 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins
2021-05-05WASM: add initial support for Emscripten cross buildJan-Marek Glogowski
- configure with: - --host=wasm64-local-emscripten - had to make a few externals optional, so adding: - --disable-nss - --disable-cmis - --disable-curl Change-Id: I48d1c73d2675ad2e2beaf2c341578199efbd24ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111130 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-05-05Adapt to "libstdc++: Implement LWG 1203 for rvalue iostreams"Stephan Bergmann
<https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=aa475c4ac80733f85ba47b109fc1900f05e810e2> towards GCC 12, so that now "the return type is the original rvalue stream type not its base class." (And which would thus have caused issues like > sfx2/source/control/bindings.cxx:1323:19: error: dynamic_cast from rvalue to reference type '::std::ostringstream &' (aka 'basic_ostringstream<char> &') > ? SAL_STREAM("File: " << pFile << " Line: " << nLine) : "")); > ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/sal/log.hxx:198:6: note: expanded from macro 'SAL_STREAM' > (dynamic_cast< ::std::ostringstream & >(::std::ostringstream() << stream).str()) > ^ > include/sal/log.hxx:341:20: note: expanded from macro 'SAL_INFO' > SAL_WHERE, stream) > ~~~~~~~~~~~^~~~~~~ > include/sal/log.hxx:155:68: note: expanded from macro 'SAL_DETAIL_LOG_STREAM' > SAL_DETAIL_LOG_STREAM_PRIVATE_(level, area, where, stream); \ > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ > include/sal/log.hxx:133:45: note: expanded from macro 'SAL_DETAIL_LOG_STREAM_PRIVATE_' > ::sal::detail::StreamStart() << stream) == 1) \ > ^~~~~~ now. While the issue with old libstdc++ that originally prompted the dynamic_cast was > sfx2/source/control/bindings.cxx:1323:19: error: no member named 'str' in 'std::basic_ostream<char>' > ? SAL_STREAM("File: " << pFile << " Line: " << nLine) : "")); > ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/sal/log.hxx:194:40: note: expanded from macro 'SAL_STREAM' > (::std::ostringstream() << stream).str() > ^ > include/sal/log.hxx:336:20: note: expanded from macro 'SAL_INFO' > SAL_WHERE, stream) > ~~~~~~~~~~~^~~~~~~ > include/sal/log.hxx:155:68: note: expanded from macro 'SAL_DETAIL_LOG_STREAM' > SAL_DETAIL_LOG_STREAM_PRIVATE_(level, area, where, stream); \ > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ > include/sal/log.hxx:133:45: note: expanded from macro 'SAL_DETAIL_LOG_STREAM_PRIVATE_' > ::sal::detail::StreamStart() << stream) == 1) \ > ^~~~~~ .) The libstdc++ macro _GLIBCXX_RELEASE is reportedly available since GCC 7.1. Change-Id: I1ee6eabb66355c1f28b9d305cbd85bac50d6b0e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115121 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-05-01Fix typoAndrea Gelmini
Change-Id: I1edc4bf2ff17c259ce654bba953c0e4705de35c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114950 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Tested-by: Jenkins
2021-04-30throw() -> noexcept, part 1/3: Manual scaffoldingStephan Bergmann
The legacy `throw()` dynamic exception specification is gone for good from C++20 (even if compilers typically still accept it, but e.g. Clang has -Wdeprecated-dynamic-exception-spec to at least warn about it). Introduce SAL_NOEXCEPT for use in URE interface include files. (For both the existing SAL_THROW_EXTERN_C and the new SAL_NOEXCEPT, base usage of `noexept` not on LIBO_INTERNAL_ONLY, but on the actual compiler C++ version, so that e.g. building CppunitTest_cppu_any-external, which uses gb_CppunitTest_set_external_code but not gb_CXX03FLAGS, will not potentially complain about those macros expanding to the legacy `throw()`, like when building with Clang -Wdeprecated-dynamic-exception-spec manually enabled.) Change-Id: I7e5c7f8d5f0fd622cfc9987d656b1f68541375aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114908 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-04-30Reshuffle code a bitStephan Bergmann
Group the various SAL_THROW_EXTERN_C macro definitions more closely together, and the C++ SAL_THROW_EXTERN_C and COVERITY_NOEXCEPT_FLASE macro definitions do not need to be inside an extern "C" block. Change-Id: I8c56f5c2efd287934cc75b20e79c27769e887e24 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114845 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-04-29Add SAL_WARN in case ProfileZones are overlapping and not hierarchicalTor Lillqvist
Change-Id: Id09904db762b6d931ab23cce16e55d5213079516 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114834 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-04-28Add API to LibreOfficeKit to set arbitrary run-time options in coreTor Lillqvist
Add setOption(const char*, const char*) At the moment this enables starting and stopping the ProfileZone event recording and overriding the SAL_LOG environment variable. Change-Id: Ic3a934bb4246c755a91eee8a8343fafc15815116 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114439 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114559 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114656 Tested-by: Tor Lillqvist <tml@collabora.com>
2021-03-22WMF EMF Add more SAL_INFO and SAL_WARN to help debugging import issuesBartosz Kosiorek
With this change, the WMF record type is displayed after enabling emfio. Change-Id: I055fc1dde6c37cf6ab8c6125fc2522bd7b1517cc Change-Id: Iff6ccbad69f4f836957206357dd707e4ddd06931 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112863 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
2021-02-05restore com.sun.star.mozilla.MozillaBootstrapCaolán McNamara
its used to find mozilla profile dirs for cert-related reasons removed overzealously with... commit ee9ed2192b56c98e5b8ee9890ddb4c533117332a Date: Thu Dec 10 18:39:26 2020 +0100 tdf#138715 remove mork driver Change-Id: I52f1ace5d4aac100c7652dc499ffe9c8312c9474 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110413 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-02-02tdf#130978 Added comment to all published APImsrijita18
Change-Id: I744788bde9778f85ccd9d7667e19d16842900a29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110248 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-28WIN move dtrans log to vcl.win.dtransJan-Marek Glogowski
Missing from commit 9613165239ade3f0b4d3d06e238430aabc9fcff3 ("WIN move dtrans code into vcl/win/dtrans"). Change-Id: I257017ae617f72c3ce48828ee34e9246af08fd8b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110073 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-01-20ofz#29691 revert throw SvStreamEOFExceptionCaolán McNamara
reasonably sane code like s.ReadUInt32(a).ReadUInt32(b).ReadUInt32(c).ReadUInt32(d); if (s.good()) // use a, b, c d; stopped working. FWIW on a short read we retain whatever was in the variable before the read, rather than overwrite it with new random data, so sal_uInt32 a(0xdead); s.ReadUInt32(a); assert(s.good() || a == 0xdead); the msoffice ppt/escher/xls/doc filters especially speculatively parse and rely on a variables preinit value in the case of a short read. commit b345a2bab0d6f981049951a86b172ce49ce7d4c2 cid#1470786 Uncaught exception commit 71aec4726a94dcde1169fd293dbecfeb0e840e6d ofz#29528 uncaught exception commit bed03603f6cae264abb9e5b58aa2ab00448d92ff ofz#29414 uncaught exception commit 684885a99a1eb7ad943e9736166d4bb1468663be ofz#29443 uncaught exception commit 93574ac7768d247ed754ecda322e54e4bd447e43 ofz#29251 Abrt commit 413db68d95bd39d34e6a6b81a7c5c9478ced0514 ofz#29152 short read commit f400e883044143f999c460375a293647b4a57244 ofz#29151 short read commit 96ea80a725dfe4ef38993f78917c243f13e3beb5 ofz#29129 Abrt on uncaught exception commit 646a635efe6eecbc3d1dd3a7cbb02a278c6f3be5 ofz#28931 Indirect-leak commit b0e573f18629d28fe3179c12d0d434653f92fc93 ofz#29030 Abrt in xlsfuzzer commit 95407c39168d186ee44e67b1a6a4bcf592c58b84 ofz#28902 uncaught exception commit 45175d655ad3773df1c006182108cf25e87b1091 oss-fuzz: tgafuzzer doesn't pass sanity check commit b82fc702bae9d6190bda1b4818a47cfa197df6d8 oss-fuzz: psdfuzzer doesn't pass sanity check commit e7c76d604a4694e6568bf10c2a06a786f1096319 oss-fuzz: epsfuzzer doesn't pass sanity check commit 901e5e7c9170184e286ea3e46fce406136aa9572 oss-fuzz: xlsfuzzer doesn't pass sanity check commit 127bfab61c297df06fd8e71e709bc4362cb89d21 oss-fuzz: pngfuzzer doesn't pass sanity check commit 77387ae00ae27e3f8bcdf7bccf97fb2db8f196b7 oss-fuzz: mtpfuzzer doesn't pass sanity check commit 974ffa79b0fef4ca76558bb8b16bce84af3aaf6c oss-fuzz: xlsxfuzzer doesn't pass sanity check commit 6d6d104cbb382d0045e1f04b12d268992fa5c624 oss-fuzz: bmpfuzzer doesn't pass sanity check commit a7d1d107ec58d3b00b4019c89edddcff71ca6ff3 oss-fuzz: qpwfuzzer doesn't pass sanity check commit 898993aa62276f59480df8af1da4bad530829b56 oss-fuzz: pcxfuzzer doesn't pass sanity check throw/catch parts of commit 8c9a4ff511a3b1d84a7a6d08a1b153c07f164abb throw exception in SvStream when reading past end of file Change-Id: Ic49c249768b17b64d8e868655dbc05b31906c2e6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109621 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-01-15Fix handling of the OBJECTDESCRIPTOR clipboard (pasteboard) type on macOSTor Lillqvist
This fixes a demonstrable problem, and affects only macOS. This is also on the path towards fixing https://github.com/CollaboraOnline/online/issues/849 , even if the code touched here is for macOS only. The iOS pasteboard handling code is based on the macOS one. We need the pasteboard to have the OBJECTDESCRIPTOR type as a MIME type that includes the typename attribute, because the code in sc checks for that when it decides whether it is a proper OBJECTDESCRIPTOR. Simplify the data in the flavorMap array. No need to duplicate the same MIME type string as both the pasteboard type and MIME type, for those cases where the MIME type is used diretly as pasteboard type. We also know that for those types, the MIME type might have additional parameters, so be more lenient in checking. With this change, and my recent change to sot, this now works: Start LibreOffice. Open a spreadsheet. Select a cell range. (It can include formulas.) Edit > Copy. Quit LibreOffice. Start LibreOffice again. Open a spreadsheet. Edit > Paste. You get the very same cells that you pasted as such (with relative cell addresses in formulas properly adjusted, as expected). Previously, it would paste an image of the copied cell range, which is fairly pointless. There is still lots of opportunity for cleanup in the clipboard code for macOS and iOS. It is presumably rather pointless to put images on the pasteboard in Windows bitmap format, for instance. Just PNG should be enough. No idea why the code provides the TIFF pasteboard type for images. Ditto for Windows metafiles (WMF and EMF). It is also unclear how useful the EMBED_SOURCE or LINK_SOURCE types are on macOS, for instance. Change-Id: I573648480b03972b506203b4f470d513bcb81212 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109297 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-12-23Make functions in rtl/character.hxx constexpr for internal useMike Kaganski
Allows to use them in compile-time initializers. Change-Id: Ifa4b8da5db6ad7b1d7c87cb2476f4c59abeb32d1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108219 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-12-22oss-fuzz: psdfuzzer doesn't pass sanity checkCaolán McNamara
Step #5: #6 0x63cce7f in __cxa_throw (/tmp/not-out/psdfuzzer+0x63cce7f) Step #5: #7 0x4f1af9 in SvStream::ReadUInt32(unsigned int&) (/tmp/not-out/psdfuzzer+0x4f1af9) Step #5: #8 0x1d9dfd6 in (anonymous namespace)::PSDReader::ImplReadHeader() (/tmp/not-out/psdfuzzer+0x1d9dfd6) Step #5: #9 0x1d9d1a6 in (anonymous namespace)::PSDReader::ReadPSD(Graphic&) (/tmp/not-out/psdfuzzer+0x1d9d1a6) Step #5: #10 0x1d9cd38 in ipdGraphicImport (/tmp/not-out/psdfuzzer+0x1d9cd38) Change-Id: I407e7a32dd8e2fffb508edf896b9ca4783b94c97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108157 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-22oss-fuzz: pcxfuzzer doesn't pass sanity checkCaolán McNamara
Step #5: #6 0x63cce7f in __cxa_throw (/tmp/not-out/pcxfuzzer+0x63cce7f) Step #5: #7 0x4f13aa in SvStream::ReadUInt16(unsigned short&) (/tmp/not-out/pcxfuzzer+0x4f13aa) Step #5: #8 0x1d86707 in (anonymous namespace)::PCXReader::ImplReadHeader() (/tmp/not-out/pcxfuzzer+0x1d86707) Step #5: #9 0x1d858b1 in (anonymous namespace)::PCXReader::ReadPCX(Graphic&) (/tmp/not-out/pcxfuzzer+0x1d858b1) Step #5: #10 0x1d85496 in ipxGraphicImport (/tmp/not-out/pcxfuzzer+0x1d85496) Step #5: #11 0x4e3ab5 in LLVMFuzzerTestOneInput (/tmp/not-out/pcxfuzzer+0x4e3ab5) Step #5: #12 0x30a5a86 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) (/tmp/not-out/pcxfuzzer+0x30a5a86) Step #5: #13 0x30a3a31 in fuzzer::Fuzzer::RunOne(unsigned char const*, unsigned long, bool, fuzzer::InputInfo*, bool, bool*) (/tmp/not-out/pcxfuzzer+0x30a3a31) Step #5: #14 0x30a8666 in fuzzer::Fuzzer::ReadAndExecuteSeedCorpora(std::__1::vector<fuzzer::SizedFile, fuzzer::fuzzer_allocator<fuzzer::SizedFile> >&) (/tmp/not-out/pcxfuzzer+0x30a8666) Step #5: #15 0x30a92b5 in fuzzer::Fuzzer::Loop(std::__1::vector<fuzzer::SizedFile, fuzzer::fuzzer_allocator<fuzzer::SizedFile> >&) (/tmp/not-out/pcxfuzzer+0x30a92b5) Step #5: #16 0x306d4c7 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) (/tmp/not-out/pcxfuzzer+0x306d4c7) Step #5: #17 0x305ea37 in main (/tmp/not-out/pcxfuzzer+0x305ea37) Change-Id: I4c70f8879c7fb1f9bcd1c857c5fcad9bcaf8d142 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108148 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-18Add sal_uInt64 fields to sal_math_DoubleEike Rathke
We may need them later, and at least don't have a confusing inf_parts or nan_parts struct name but just parts as well. Change-Id: Ife0cf279c47d2815aa2a1483223397b147e9d776 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107924 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2020-12-14macOS __arm64__ math.h does not define legacy finiteStephan Bergmann
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/ SDKs/MacOSX.sdk/usr/include/math.h only declares it in an > #if defined __i386__ || defined __x86_64__ [...] > /* Legacy BSD API; use the C99 `isfinite( )` macro instead. */ > extern int finite(double) > __API_DEPRECATED("Use `isfinite((double)x)` instead.", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos); block, so CppunitTest_odk_checkapi (which deliberately builds in pre-C++11 mode) failed with > In file included from ~/lo/core/odk/qa/checkapi/checkapi.cxx:29: > In file included from ~/lo/core/workdir/CustomTarget/odk/allheaders/allheaders.hxx:351: > ~/lo/core/include/rtl/math.hxx:352:12: error: use of undeclared identifier 'finite'; did you mean 'isfinite'? > return SAL_MATH_FINITE(d); > ^ So extend 19bce817279c7fd150af0422c224975e57ff9f41 "Try to use isfinite() for iOS" to all Apple non-Intel platforms. (We no longer support macOS __i386__ builds, but it probably does not hurt to nevertheless mention it here in the URE interface sal/mathconf.h include file.) Change-Id: I9b3a2ec1e48762dd178704185c64d1d3fe358001 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107714 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-12-14tdf#138715 remove mork strings and install targetsJan-Marek Glogowski
Hopefully fixes the package build. Regression from commit ee9ed2192b56c98e5b8ee9890ddb4c533117332a ("tdf#138715 remove mork driver"). Change-Id: I0faad65af834e3668c9845eadfe3439ae57b3699 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107692 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-07remove unused sal log areas related to openglLuboš Luňák
Change-Id: I8cd870b6e22a30e0e88fcdf347a5584ada7f6950 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107289 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-11-21tdf#123936 Formatting files in module include with clang-formatPhilipp Hofer
Change-Id: I0507dd797cd5a35e0ae14f4b69ee4e172d08a71a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105681 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2020-10-04use more TOOLS_WARN_EXCEPTIONMike Kaganski
Change-Id: Iff30468e59a0bc782958dd41bcea726a4c869698 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103909 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-09-25xmlsecurity: fold pdfio into pdfsignaturehelperMiklos Vajna
Most of the initial pdfio was moved to vcl as vcl::filter::PDFDocument. A small part was left here, because it depended on NSS. Then later the NSS bits were moved to svl::crypto::Signing. The rest is just a small amount of code, keeping that separate from PDFSignatureHelper, which is its only user makes little sense. With this, vcl::filter::PDFDocument is an implementation detail of PDFSignatureHelper during signature verification. Change-Id: I6230f9e46deeff7159970f88dbb3bd2de0e9ce7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103350 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-09-16[API CHANGE] Remove unused and deprecated sal_Char/sal_sChar/sal_uCharJulien Nabet
These are deprecated since 2013, see: deprecated since 2013, see: author Stephan Bergmann <[hidden email]> 2013-11-27 12:50:35 +0100 committer Stephan Bergmann <[hidden email]> 2013-11-27 12:52:32 +0100 commit d8565bd266939b4ae4231f5b2c7d6260bee404e9 (patch) tree c4dc8575d838bf7f588ebb5102acc62cf7651336 parent b5fced896632a3c07586702b461545667b33966e (diff) Mark sal_Char, sal_sChar, sal_uChar as deprecated ...there never was a good reason to have SAL abstractions for the C/C++ char types anyway. and last uses of sal_Char and sal_uChar have been replaced with: - https://cgit.freedesktop.org/libreoffice/core/commit/?id=04203a26757d26814a18c3251d1a97f6ded64a62 author Julien Nabet <serval2412@yahoo.fr> 2020-09-11 22:05:12 +0200 committer Noel Grandin <noel.grandin@collabora.co.uk> 2020-09-12 13:36:42 +0200 commit 04203a26757d26814a18c3251d1a97f6ded64a62 (patch) tree 80962f43d3b46e8670ad49068a1a6e8459c22f39 parent 05d5062dca095f2e53de26db41edeb0b1279138b (diff) Replace remaining uses of sal_Char + remove sal_Char check on compilerplugins - https://cgit.freedesktop.org/libreoffice/core/commit/?id=70666469b87ab1e3589db0f5f7a236d744e83733 author Julien Nabet <serval2412@yahoo.fr> 2020-09-11 17:38:21 +0200 committer Noel Grandin <noel.grandin@collabora.co.uk> 2020-09-12 18:54:15 +0200 commit 70666469b87ab1e3589db0f5f7a236d744e83733 (patch) tree 88ee34da282712ea32e6354be92472f5fa52f1d4 parent 8214051829468c783404faf19194b26b35833e41 (diff) Replace remaining uses of sal_uCharHEADmaster The goal is then to remove sal_uChar completely since it's been deprecated in 2013! See http://document-foundation-mail-archive.969070.n3.nabble.com/About-removing-long-time-deprecated-types-from-public-API-tt4287268.html Change-Id: Ifc6057f49b6022a917d479c6f403b3f65454c510 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102436 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-08-07Use <alloca.h> for macOS and iOS, tooTor Lillqvist
Change-Id: I20f349cc03fe28536470c19f2559cc5414b823fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100284 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-07-07Allow making SAL_LOG based output fatalJan-Marek Glogowski
This introduces the [+-]FATAL marker for SAL_LOG. This way you can set part of the matching SAL_LOG string to std::abort on match. The example "SAL_LOG=+FATAL+WARN.vcl.scheduler-FATAL+INFO" will abort for any "+WARN.vcl.scheduler" match, but will just print all additional "+INFO" logs. Change-Id: Ib77f194a78f5165e6c885c82374ae41293815ee9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97651 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-04-23Drop Macromedia Flash export filterGabor Kelemen
Flash technology is going to be retired by the end of 2020 by Adobe: https://theblog.adobe.com/adobe-flash-update/ With this ahead doesn't make much sense for LO 7.0 to support exporting presentations and drawings to swf anymore. Change-Id: Ic2c6e95db2f56bcd4eb25abdd0a6748aee9b0e4c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92507 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-04-17No need for HAVE_GCC_DEPRECATED_MESSAGEStephan Bergmann
GCC appears to support it at least since <https://gcc.gnu.org/git/ ?p=gcc.git;a=commit;h=9b86d6bb25587db93a322bf5778e9892aaa8b776> "re PR c/36892 (Support __attribute__((deprecated("text string"))))" in GCC 4.5, and Clang appears to support it at least since <https://github.com/llvm/llvm-project/ commit/c7890fed01f8c8accba188236d781af26845cb2c> "Add an optional string argument to DeprecatedAttr for Fix-It" in Clang 3.9. Change-Id: If0939c692703522523d1953c3793070e0f808973 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92455 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-17No need for HAVE_GCC_PRAGMA_OPERATORStephan Bergmann
The _Pragma operator is a C99/C++11 feature, and we only need it for GCC and Clang anyway, to inject some #pragma GCC diagnostic ... directives. (MSVC would only support it with the upcoming VS 2019 Version 16.6, see <https://devblogs.microsoft.com/cppblog/ announcing-full-support-for-a-c-c-conformant-preprocessor-in-msvc/>.) Change-Id: I6de3611021a28ba13860f55e7ad005ad3fbbb5e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92452 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-01add SAL_LOG area vcl.skia.traceLuboš Luňák
So that Skia tracing debug output can be disabled selectively (e.g. SAL_LOG=+INFO.vcl.skia-INFO.vcl.skia.trace). Change-Id: Id90c77d90ce871b958429d0fe3e59c9da97b0307 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91469 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-05Add a separate log tag for the UI builderTor Lillqvist
Change-Id: I54d0233574fa84f1fe988a88f6220985e9149b83 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90004 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-02-13make OpenGL blacklist file code generic and use it for Skia/VulkanLuboš Luňák
Change-Id: Icc150b853f5d2d06afedcb7878f6a031aff57c2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88533 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-07merge OpenGLZone and OpenCLZone into one generic codeLuboš Luňák
To be used also by Skia code to detect problems with Vulkan drivers. The watchdog does not handle OpenCL because neither did the original code, but also because OpenCLZone::hardDisable() called from it would deadlock on SolarMutex for some reason. Change-Id: I483d8cb0b11a4e1e65c564f4e4c29ab68843ff71 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88008 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-28HAVE_GCC_ATTRIBUTE_WARN_UNUSED should always be true now for Clang/GCCStephan Bergmann
...but for safety, leave the configure.ac check in for some longer. Change-Id: I90cba5812492ba85d7723ff71aba75b7721b9622 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87621 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-27add SAL log group vcl.skia for tracing Skia usageLuboš Luňák
Change-Id: Ife21bbe0b86c3edd20e657da09c6e218fa4fced3
2019-10-21Silence new Clang 10 trunk -std=c++2a -Wambiguous-reversed-operator for nowStephan Bergmann
It is unclear whether this will really be errors in a final C++20 standard, see <https://github.com/llvm/llvm-project/commit/ 974c8b7e2fde550fd87850d50695341101c38c2d> "[c++20] Add rewriting from comparison operators to <=> / ==" for details. Change-Id: I3a7c2574a65952c8d255107823a1d1e18b2cbe4c Reviewed-on: https://gerrit.libreoffice.org/81268 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>