Commit Graph
2015 Commits
Author SHA1 Message Date
Mike Kaganski cbd2e455b6 Drop silencing clang-cl -Wextra-tokens in midl-generated code
The following commits introduced these:

77a39107b1 (Silence clang-cl -Wextra-tokens
in midl-generated code, 2015-11-28);
5ccdc4187b (Silence clang-cl -Wextra-tokens
in midl-generated code, 2015-11-30);
34604446fc (Various clang-cl/loplugin
warnings, 2017-03-14).

The problem was, that some versions of midl compiler generated an invalid
code like "#endif !_MIDL_USE_GUIDDEF_", which caused warnings in gcc and
clang (see e.g. https://stackoverflow.com/q/29153518/1397376).

I see that as of VS 2022, this problem is not reproducible, so let's drop
these.

Change-Id: Icce797ae6fa8b1aca17ca0b5051e2af606126bf8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194010
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-11-19 08:36:29 +01:00
Simon Chenery abd7996a8b tdf#147021 avoid use of SAL_N_ELEMENTS macro in SysShExec.cxx
Also replace for loop with counter with a range-based for loop.

Change-Id: Ief6b76f1980e0afe72cdebb0b2370b34c0a138b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189235
Reviewed-by: David Gilbert <freedesktop@treblig.org>
Tested-by: Jenkins
2025-08-09 15:01:12 +02:00
Stephan Bergmann 28b1b9af5e Emscripten: Move execute_browser to the browser main thread
...so that it can reference the JS `window` object (e.g., when clicking on "Help
- About LibreOffice - Credits")

Change-Id: Ia08226af7bbf5a503be9e0b81c27217ad2775269
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185801
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2025-05-26 17:31:51 +02:00
Christian Lohmaier 9e348f9c5b no longer add the 64bit windows explorer extensions to the 32bit build
those were from a time where there was 64bit Windows, but no 64bit
builds of LibreOffice/OpenOffice.org - now the only usecase for 32bit
LibreOffice is to use it on 32bit-only machines…

Change-Id: Icf1eacafd9e157788e8ec5a035716327492f5c2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185565
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2025-05-24 23:40:41 +02:00
Mike Kaganski a5aa50a59a Simplify ZipFile implementation; deduplicate some iteration code
Change-Id: I1cb3336f0242985dc9df5263d46e41e0f47b3dcb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185296
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-05-14 13:11:22 +02:00
Michael Weghorn c0bdc3daf1 shell: Drop "EnableATToolSupport" backend setting
The "EnableATToolSupport" setting/property that
can be queried from desktop backend implementations
doesn't seem to be used anywhere, so drop it.

There is still MiscSettings::GetEnableATToolSupport,
but that doesn't make use of the above.

Change-Id: I1ce64101d9795356e87e29c598dde25579a73111
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185071
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-05-12 11:41:50 +02:00
Michael Weghorn 29da9e0082 shell kf5be: Use existing toOUString helper + drop duplicate
Change-Id: I4071e21d9d9a2e9bf1f465fb4edc049406ce9e6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185072
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-05-10 17:35:01 +02:00
Michael Weghorn 7dca86d9ef Drop DesktopEnvironmentContext, "system.desktop-environment"
The DesktopEnvironmentContext class's only purpose
seems to have been to provide the name of the current
desktop environment (by using Application::GetDesktopEnvironment)
when queried for "system.desktop-environment".

Stop using this and wrapping the original context
in `InitVCL`, but instead call Application::GetDesktopEnvironment
directly in those places that were previously using the property.

The

    // Desktop Environment context (to be able to get value of "system.desktop-environment" as soon as possible)

comment in InitVCL removed with this commit doesn't explain
why this "system.desktop-environment" was used in the first place
instead of calling Application::GetDesktopEnvironment directly.
(Since the implementation would call the latter, it
wouldn't be able to provide anything earlier than if calling
the method directly.)

As expected, the value for the desktop environment is the same in
both places with this commit in place as it was previously
("PLASMA6" in a KDE Plasma 6 session).

Change-Id: I37bef5d1acdf4c532265696a9f2c37f4e507b86c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185070
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-05-10 17:34:54 +02:00
Mike Kaganski b4ad56ecb6 Simplify vector initialization using brace initialization
Change-Id: Ied85f4950c0dd01cc58c81fdad1196ee6d51ff4a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184850
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-05-01 08:35:53 +02:00
Mike Kaganski f4b72c08f9 Refactor shell thumbnail extension code
1. Drop obsolete #ifndef DONT_HAVE_GDIPLUS, introduced in commit
06c8108fe5 (Attempt to make this
build with MinGW, 2011-06-24).

2. Improve API methods implementations.

2.1. In IUnknown::Release, make sure to check the value returned
from decrement, not the member (that could potentially be modified
in the meantime again).

2.2. In ISequentialStream::Read, don't return S_OK for too large
read; and make sure to set pcbRead even on zero-byte read.

2.3. In IStream::Seek, check dwOrigin value; handle STREAM_SEEK_END
correctly, without subtracting an extra 1; don't fail on too large
positive offset (that is explicitly documented as OK); and don't
ignore the plibNewPosition argument (callers expect the new offset
there).

2.4. In IStream::Stat, check grfStatFlag value; handle OOM; don't
limit the returned offset to 32 bits.

3. Make StreamOnZipBuffer own the buffer. It user a reference to
temporaries; but the object is refcounted, and when passed to an
API, it could potentially outlive the temporaries it depended on.

4. Move CThumbviewer definition to CXX, and simplify the HXX.

Change-Id: I5b31a8bf66651862d730cc346948dc04f984fddb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184807
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-05-01 05:54:04 +02:00
varshneydevansh 2a20616d09 Move Windows error helpers to comphelper namespace
Previously, WindowsErrorString and WindowsErrorStringFromHRESULT were
defined in an anonymous namespace in windowserrorstring.hxx, which:
1. Made them unavailable to other translation units
2. Violate ODR by creating separate copies in each TU
3. Require workarounds to access them

Changes:
- Move functions to proper comphelper namespace
- Keep implementations inline as they're simple utilities
- Preserve all existing functionality
- Update all call sites to use comphelper:: prefix

This change enables proper use of these utilities across LibreOffice
while maintaining current behavior and performance characteristics.

Introduced in this commit:

    commit 94cdcaa4d8
    Author: Tor Lillqvist <tml@collabora.com>
    Date:   Thu Aug 13 13:22:28 2015 +0300

        Add a globally usable WindowsErrorString function

Change-Id: I34df1c2b1f30c6204f107ca4792131d692203880
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183332
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-03-26 15:11:33 +01:00
Mike Kaganski afb8bce96f Use EXTENDED_MAX_PATH for consistency
... instead of literal 32767 or duplicating constants.

Change-Id: I43d7bba2fa2dc74ae65b23f54fb7765f95084895
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180464
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-01-19 13:25:42 +01:00
Caolán McNamara 400970acf4 check if non-file uris could be interpreted as a file system pathname
Change-Id: If283bec44ad1d648c68a5d0f028855e09c09017e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179868
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-01-09 09:24:30 +01:00
Mike Kaganski e143c83b1c Simplify using designated initializers
Change-Id: I73d666a0aa4a41e8e73cb701161be1da6fd59d0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179942
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-01-08 11:37:08 +01:00
Caolán McNamara c59dfb2f7c split out a separate 'checkFile'
no change in logic intended

Change-Id: I56b8dabaaecd403704d2317cfe90ee5f04875dbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179844
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-01-06 22:18:05 +01:00
Mike Kaganski d38e0d615c Send attachments to xdg-email also as --attach arguments
Intended to handle the potential end of support of "attach" in mailto URLs,
as discussed in https://gitlab.freedesktop.org/xdg/xdg-utils/-/issues/177.

Change-Id: If1e9a7161e9805f634fcab5fb83e6f172af54d1c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178701
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
2024-12-18 14:30:18 +01:00
Mike Kaganski b88a3f1f16 Simplify and deduplicate a bit
Change-Id: I3f7fac31e7f15562c39b453c67735d7386c86f7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178658
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-17 14:38:09 +01:00
Mike Kaganski 38d8aa28d5 Simplify variable expansion
Change-Id: I2447d040a371da9c76fe167da3ac802cd7d7416a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178610
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-17 09:18:22 +01:00
Stephan Bergmann 1d9a3789c9 Fix typo in earlier commit
...6d1cddea8e4e19287891ab8fb7e3774ae9976ea1 "tdf#135628 Let uri-encode encode
newlines"

Change-Id: I11e6f08947e85964f02fe1379217a2004492d0b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178602
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-12-17 07:44:26 +01:00
Stephan Bergmann 6d1cddea8e tdf#135628 Let uri-encode encode newlines
...and invoke it via `printf ... | uri-encode` rather than `echo ... |
uri-encode`, to avoid passing spurious newlines to it (which appears to have
been the reason for it not to encode newlines in the first place)

Change-Id: I26131a19f69c04b0beca8e8bab72c1dbb65300c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178596
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-12-16 16:57:11 +01:00
Simon Chenery c6fd44d819 tdf#158237 Use C++20 contains() instead of find() and end()
Change-Id: Ib0ed8868b94c1470768a95fb26767cf25fe4bf8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177028
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-11-23 14:47:02 +01:00
Gabor Kelemen e1a351ca19 Remove now unneeded osl/diagnose.h
followup to commit 57c228803e

Change-Id: Iebfb23bb65e2bf898bf27f367cc9641f47a14cf3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167998
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Tested-by: Jenkins
2024-07-20 10:20:31 +02:00
Mike Kaganski 858c078056 Update preprocessed_command with the end result of the path checks
So we don't rely on ShellExecuteExW doing the same.

Change-Id: I83efe08b0e0fe062c6e0402fab8ebbf36e56cadc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169908
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-11 11:42:50 +02:00
Mike Kaganski d7d14e91f7 SHGFI_EXETYPE doesn't need SHFILEINFOW
Change-Id: Ib18d5a3992174c0b56f11970d02515bc6d0ea615
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169907
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-03 22:12:00 +02:00
Mike Kaganski afa5ade8b5 Optimize a bit
Change-Id: Icccf4a93054780c7a111f664117b25821c47f700
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169906
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-03 22:11:53 +02:00
Mike Kaganski 79c710438a Don't pass unused optional agrument
IShellLinkW::GetPath allows to pass nullptr to its third argument:
see https://learn.microsoft.com/en-us/windows/win32/api/shobjidl_core/nf-shobjidl_core-ishelllinkw-getpath

Change-Id: Icf1ca402448b8dfcc3a5ab2834341e67e8dc0b8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169869
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-02 21:32:56 +02:00
Mike Kaganski 6144341c8e Add source location to ComError
And use in CSysShExec::execute to improve location reporting

Change-Id: I624df0418b99a79207f5aeefa38d2bfe5ea7ffe1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169880
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-07-02 20:18:04 +02:00
Mike Kaganski 3b824baa86 Simplify error handling in CSysShExec::execute
Change-Id: I6c9723d67eeda6deea088ac28b843628a5b3200f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169867
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-02 20:17:54 +02:00
Mike Kaganski 52a2c19fc4 Remove some unneeded casts
This also changes the API used in WriteLibraryToRegistry.

Change-Id: Iba4c20567275a64684be8695c771e4c5535956ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168912
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-06-16 06:32:50 +02:00
Mike Kaganski 01a60798c6 Simplify a bit using newer registry API
Change-Id: I8e0106464260126983a1d55c66c218e78da7f94e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168908
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-06-15 17:43:19 +02:00
Mike Kaganski c529cd74f2 Simplify a bit using newer registry API
Change-Id: Id5e13ec253f04ecae972d671cbafd1433717bca9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168907
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-06-15 17:43:08 +02:00
Michael Weghorn eff8497fa2 kf5be: Make fromQStringToOUString work for Qt 6
Sync `fromQStringToOUString` with the `toOUString`
implementation in `vcl/inc/qt5/QtTools.hxx`, which
makes it work with Qt 6 as well.

Without this, building this with a planned upcoming
change that introduces a KF 6 desktop backend would fail
like this:

    In file included from /home/user/development/git/libreoffice/shell/source/backends/kf6be/kfaccess.cxx:10:
    /home/user/development/git/libreoffice/shell/source/backends/kf6be/../kf5be/kfaccess.cxx:53:60: error: non-constant-expression cannot be narrowed from type 'qsizetype' (aka 'long long') to 'sal_Int32' (aka 'int') in initializer list [-Wc++11-narrowing]
       53 |     return { reinterpret_cast<char16_t const*>(s.utf16()), s.size() };
          |                                                            ^~~~~~~~
    /home/user/development/git/libreoffice/shell/source/backends/kf6be/../kf5be/kfaccess.cxx:53:60: note: insert an explicit cast to silence this issue
       53 |     return { reinterpret_cast<char16_t const*>(s.utf16()), s.size() };
          |                                                            ^~~~~~~~
          |                                                            static_cast<sal_Int32>( )

Change-Id: Ic2b1ddcaa290379187db69b33e4a700c148650e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168275
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-31 14:29:01 +02:00
Michael Weghorn 9214b80fe6 kf: Drop "5" from KF 5 desktop backend file names
... and namespace.

This is in preparation of implementing a KF 6
backend that will reuse most of the code.

Change-Id: I0c0f499ff57dd18e7e0bc7dd838acfeffa30d88c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168274
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-31 14:28:52 +02:00
Michael Weghorn cc733542fe tdf#143148 kf: Use pragma once in kf5access.hxx
Change-Id: If2d8d2dc13088ba2b2972198b8386be55401871d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168273
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-31 14:28:44 +02:00
Noel Grandin aeb099ec66 loplugin:ostr in shell
Change-Id: Ia3b9f7dc0ae67f420c3bed370f549a492251156b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167705
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-16 08:49:30 +02:00
Christian Lohmaier 0c4c84a14b makefile simplification: replace $(call gb_CustomTarget_get_workdir,foo)
…by a simple/static $(gb_CustomTarget_workdir)/foo

The build system has a lot of overly complicated leftovers from when it
was introduced and had not only deal with split repositories but also
had to coexist with another buildsystem. Along with lots of copy'n'paste
along the years the makefiles became hard to grasp for newcomers with
all our calls and evals.
As a first step to streamline that, the macros from TargetLocations that
simply prefix a static path to the argument (and similar of the same
kind) are a natural pick before simplifying the rules themselves/getting
rid of a bunch of eval statements.

Change-Id: Ia06dbbcd5d1994755a2ff05b84f72ccbc4e3cab5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167005
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2024-05-03 16:06:14 +02:00
Gabor Kelemen f7ccf46b13 tdf#146619 Drop unused 'using namespace' in: shell/
Change-Id: I4194a1e3b92ec5bd25a8f313f7ff441566079bac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165517
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-03-30 20:50:06 +01:00
Stephan Bergmann 9adcf67c9b Drop C/C++ DEBUG macro
...(that was defined iff OSL_DEBUG_LEVEL >= 2) and replace its uses with
OSL_DEBUG_LEVEL directly

Change-Id: I807c15a02cc8ced9852287df0afb4808761d19d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165067
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-03-21 16:30:59 +01:00
Mike Kaganski 8f6b412581 Define a name for the extended path buffer size, instead of a literal
Change-Id: If6d40c818e021b3241d6b6b33aceca07c6393511
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163926
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 05:59:10 +01:00
Mike Kaganski ad4d3a9602 Replace an instance of MAX_PATH with 32767
... which is the approximate maximum of Windows API, as documented in
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation

Change-Id: I2bfc2f2fa8a405ed36d6bb0c52f961028dd2fe6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163911
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 03:22:27 +01:00
Mike Kaganski fa86d95014 Replace an instance of MAX_PATH with 32767
... which is the approximate maximum of Windows API, as documented in
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation

Change-Id: I152b0b499374167720d73a475f2502e52fc5a5dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163910
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 03:19:36 +01:00
Mike Kaganski 3fef8ba992 Replace an instance of MAX_PATH with 32767
... which is the approximate maximum of Windows API, as documented in
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation

Change-Id: I78524891d89e34fb1569bf1d32161a96079f0f6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163909
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 03:19:21 +01:00
Mike Kaganski cb12053fc5 Replace an instance of MAX_PATH with 32767
... which is the approximate maximum of Windows API, as documented in
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation

Change-Id: I5cd3c5e384005341aa2c39b18b3302521e71a805
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163908
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 03:19:03 +01:00
Mike Kaganski 7dd7cdc7af Replace an instance of MAX_PATH with 32767
... which is the approximate maximum of Windows API, as documented in
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation

Change-Id: I7029d18eaa721a0db1b1869cfe6425715e80eda1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163907
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 03:18:45 +01:00
Mike Kaganski 2468fe5d91 Remove an instance of MAX_PATH
... and avoid manual memory management.

Change-Id: I6f056fd5bcc299c2c31aede227b29444ec3c5988
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163906
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 02:23:25 +01:00
Mike Kaganski c6e2626f7d Remove an instance of MAX_PATH limitation
... and avoid manual memory management.

Change-Id: I901cfc1dbede3241d387003c04fa11c1371fa8d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163905
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-26 02:23:03 +01:00
Andrea Gelmini 658d4d013a Fix typo
Change-Id: I7c61c8540ab9a9b5b2dafd901578fb7fd7fa85a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162796
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-01-31 11:20:57 +01:00
Stephan Bergmann 2b1f5fa987 tdf#159307 Let non-URIS_ONLY execute() handle .app directories on macOS
Change-Id: I873daed9347b5e5bee4a630474438fce2cc73fec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162768
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-01-31 09:33:27 +01:00
Mike Kaganski 0fa827dbb2 Drop std::as_const from css::uno::Sequence iterations
Obsoleted by commit 2484de6728 (Remove
non-const Sequence::begin()/end() in internal code, 2021-10-15) and
commit fb3c04bd19 (Drop non-const
Sequence::operator[] in internal code, 2021-11-05).

Change-Id: Idbafef5d34c0d4771cbbf75b9db9712e504164cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162640
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-27 12:43:48 +01:00
Eli Schwartz a1c854fffe use portable "command -v" to detect installed programs, part 1
The "which" utility is not guaranteed to be installed either, and if it
is, its behavior is not portable either. This means that when various
programs are installed, the `which` check will report a fatal error
because the which tool did not exist and the shell returned a nonzero
status when attempting to fork+exec. If it did exist, it might not be an
implementation of `which` that returns nonzero when commands do not
exist.

The general scripting suggestion is to use the "command -v" shell
builtin; this is required to exist in all POSIX 2008 compliant shells,
and is thus guaranteed to work everywhere.

For some in-depth discussions on the topic, see:
- https://mywiki.wooledge.org/BashFAQ/081
- https://unix.stackexchange.com/questions/85249/why-not-use-which-what-to-use-then/85250#85250

Examples of open-source shells likely to be installed as /bin/sh on
Linux, which implement the 15-year-old standard: ash, bash, busybox,
dash, ksh, mksh and zsh.

This commit changes two programs installed to end-user systems.

Change-Id: I6013965bb914f5b0d593a876866b991e210ef5b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160662
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-01-22 13:46:45 +01:00