summaryrefslogtreecommitdiff
path: root/sal/osl/unx/process_impl.cxx
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2013-02-22 23:19:22 +0200
committerTor Lillqvist <tml@iki.fi>2013-02-22 23:21:22 +0200
commitfd56eb98e63b4aac12c9633d5847a3fb964f326d (patch)
treea11fd2818e25e2048ab163edad9dfefd6215f910 /sal/osl/unx/process_impl.cxx
parent3eaa536ae457391c3826be50b0361f8d0c13cdd3 (diff)
Not using NativeActivity means no lo_main() stuff used either
Hopefully also fixes build for iOS by re-introducing checks for DESKTOP. Also this commit partially reverts 52a8744afee2cd589813f0377d93f821fce7aedd. Change-Id: Ie94c771b72ba138bb0481b054285916618baf6eb
Diffstat (limited to 'sal/osl/unx/process_impl.cxx')
-rw-r--r--sal/osl/unx/process_impl.cxx24
1 files changed, 4 insertions, 20 deletions
diff --git a/sal/osl/unx/process_impl.cxx b/sal/osl/unx/process_impl.cxx
index 4a10af514557..723d10bcd436 100644
--- a/sal/osl/unx/process_impl.cxx
+++ b/sal/osl/unx/process_impl.cxx
@@ -104,26 +104,10 @@ oslProcessError SAL_CALL osl_bootstrap_getExecutableFile_Impl (
{
oslProcessError result = osl_Process_E_NotFound;
-#if defined(ANDROID) && !defined(DISABLE_DYNLOADING)
- /* On Android we in theory want the address of the "lo_main()"
- * function, as that is what corresponds to "main()" in
- * LibreOffice programs on normal desktop OSes.
- *
- * But that is true only for apps with a "native activity", using
- * <sal/main.h> and the org.libreoffice.android.Bootstrap
- * mechanism. For more normal (?) Android apps that just use
- * LibreOffice libraries (components) where the main program is in
- * Java, that just use LibreOffice libraries, there is no
- * lo_main(). (Note that we don't know for sure yet how
- * complicated it might be to write such Android apps...)
- *
- * Maybe best to just pick some function in liblo-bootstrap.so
- * which also such Java apps *must* load as the very first
- * LibreOffice native library. We store all LibreOffice native
- * shared libraries an app uses in the same folder anyway, so it
- * doesn't really matter.
- */
- void * addr = (void *) &lo_dlopen;
+#ifdef ANDROID
+ /* Now with just a single DSO, this one from lo-bootstrap.c is as good as
+ * any */
+ void * addr = dlsym (RTLD_DEFAULT, "JNI_OnLoad");
#else
/* Determine address of "main()" function. */
void * addr = dlsym (RTLD_DEFAULT, "main");