office-gobmx/desktop
Miklos Vajna 60a39b8dd8 desktop: fix type of the last argument of lok_preinit_2()
This went wrong in commit 5de22d1e55
(Handle "addfont" from Collabora Online, 2022-03-09), running e.g.
online.git unit-tiff-load with sanitizers complains:

kit/Kit.cpp:2977:9: runtime error: call to function (unknown) through pointer to incorrect function type 'int (*)(const char *, const char *, _LibreOfficeKit **)'

I.e. the type in lok_preinit_2() is LibLibreOffice_Impl**, but the type
in LokHookPreInit2 is LibreOfficeKit**.

Since this is just a pointer, there is no harm in adapting
lok_preinit_2() to match.

Change-Id: Ib80711a5ae7719a9058151f482aca50c43185348
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134941
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-05-26 08:25:04 +02:00
..
inc do not pass XComponentContext to officecfg::...::get() calls 2022-03-07 15:37:22 +01:00
qa sw content controls, dropdown: add LOK API 2022-05-13 09:10:25 +02:00
scripts
source desktop: fix type of the last argument of lok_preinit_2() 2022-05-26 08:25:04 +02:00
test/deployment
uiconfig/ui add truncate-multiline to match vcl default 2022-05-17 09:53:57 +02:00
unx/source
util
win32/source
AllLangMoTarget_dkt.mk
CppunitTest_desktop_app.mk Drop support for OpenGL denylist on X11 2022-03-28 14:31:07 +02:00
CppunitTest_desktop_dialogs_test.mk
CppunitTest_desktop_lib.mk
CppunitTest_desktop_lokinit.mk
CppunitTest_desktop_version.mk
CustomTarget_desktop_unopackages_install.mk
CustomTarget_soffice.mk
Executable_minidump_upload.mk
Executable_oosplash.mk
Executable_quickstart.mk
Executable_sbase.mk
Executable_scalc.mk
Executable_sdraw.mk
Executable_simpress.mk
Executable_smath.mk
Executable_soffice_bin.mk
Executable_soffice_com.mk
Executable_soffice_exe.mk
Executable_soffice_safe.mk
Executable_sweb.mk
Executable_swriter.mk
Executable_unoinfo.mk
Executable_unopkg.mk
Executable_unopkg_bin.mk
Executable_unopkg_com.mk
Extension_test-active.mk
Extension_test-crashextension.mk
Extension_test-passive.mk
GeneratedPackage_desktop_unopackages_install.mk
IwyuFilter_desktop.yaml
Jar_active_java.mk
Jar_passive_java.mk
Library_active_native.mk
Library_crashextension.mk
Library_crashreport.mk
Library_deployment.mk
Library_deploymentgui.mk
Library_deploymentmisc.mk
Library_migrationoo2.mk
Library_migrationoo3.mk
Library_offacc.mk
Library_passive_native.mk
Library_sofficeapp.mk Drop support for OpenGL denylist on X11 2022-03-28 14:31:07 +02:00
Library_spl.mk
Library_unopkgapp.mk
Makefile
Module_desktop.mk
Package_branding.mk
Package_branding_custom.mk
Package_sbase_sh.mk
Package_scalc_sh.mk
Package_scripts.mk
Package_sdraw_sh.mk
Package_simpress_sh.mk
Package_smath_sh.mk
Package_soffice_sh.mk
Package_swriter_sh.mk
Pagein_calc.mk
Pagein_common.mk
Pagein_draw.mk
Pagein_impress.mk
Pagein_writer.mk
Pyuno_passive_python.mk
Rdb_crashextension.mk
Rdb_passive_generic.mk
Rdb_passive_platform.mk
README.md
README.vars
StaticLibrary_winlauncher.mk
StaticLibrary_winloader.mk
UIConfig_deployment.mk
WinResTarget_quickstart.mk
WinResTarget_sbase.mk
WinResTarget_scalc.mk
WinResTarget_sdraw.mk
WinResTarget_simpress.mk
WinResTarget_smath.mk
WinResTarget_soffice.mk
WinResTarget_sofficebin.mk
WinResTarget_sweb.mk
WinResTarget_swriter.mk

LibreOffice Binary

Code for the LibreOffice main binary (soffice) resides here. The soffice_main function for the soffice binary can be found here.

Stable Interface

Some of the artifacts built here are part of a LibreOffice installation set's stable interface, which (programmatic) clients can depend on. Among them are:

soffice

In the program directory (program/ on Linux and Windows, Contents/MacOS/ on macOS).

unoinfo

In the program directory (program/ on Linux and Windows, Contents/MacOS/ on macOS).

When called with a sole argument of c++, it prints to stdout an absolute pathname denoting the directory where the public URE libraries are found.

When called with a sole argument of java, it prints to stdout a marker character (either an ASCII '0' or '1') followed by a sequence of zero or more absolute pathnames denoting jars or directories that need to be included in a class loader's search locations.

If the marker character is '0' (on Linux and macOS), the pathnames are encoded as bytes, and any two pathnames in the sequence are separated from each other by NUL bytes.

If the marker character is '1' (on Windows), the pathnames are encoded as UTF-16-LE two-byte code units, and any two pathnames in the sequence are separated from each other by two-byte NUL code units.

Other Binaries

oosplash

Splash screen for the LibreOffice soffice binary.

Extensions

The directory test/deployment contains some extensions to be used for testing:

  • test/deployment/crashextension: C++ extension to make LibreOffice crash. Useful for testing Crashreporter.
    • Build with Extension_test-crashextension.
    • Extension can be found in workdir/Extension/test-crashextension.oxt
  • test/deployment/passive: C++, Java and Python extension samples with passive registration.
    • Build with make Extension_test-passive.
    • Extension can be found in workdir/Extension/test-passive.oxt
  • test/deployment/active: C++, Java and Python extension samples with active registration.
    • Build with make Extension_test-active.
    • Extension can be found in workdir/Extension/test-active.oxt