Related fdo#74597: Java on Mac doesn't use javaldx/library path fiddling

...so no need to return non-empty SunInfo::getLibraryPaths (for the Oracle JRE,
cf. how this had always returned an empty set for the Apple JRE in
otherjre.cxx).

This fixes the bug that selecting the Oracle JRE in the Advanced options pane
didn't stick, because jfw_areEqualJavaInfo was called on a JavaInfo read back
from XML where nRequirements had been cleared (in CNodeJavaInfo::loadFromNode)
and a JavaInfo where non-empty SunInfo::getLibraryPaths ->
VendorBase::needsRestart() == true -> nRequirements == JFW_REQUIRE_NEEDRESTART,
so always returned false.

(There's multiple errors here.  It is questionable whether jfw_areEqualJavaInfo
should take nRequirements into account, at least when used from
SvxJavaOptionsPage.  And VendorBase::getLibraryPaths appears to be only used to
compute VendorBase::needsRestart, ignoring the actual path data.  But leave that
for future clean-up.)

Change-Id: I5f004434b1cb7e909a153c43c474a2317f24b0c1
This commit is contained in:
Stephan Bergmann
2014-02-11 14:10:43 +01:00
parent b1add8f4ac
commit 6c697a99c9

View File

@@ -76,18 +76,12 @@ char const* const* SunInfo::getRuntimePaths(int * size)
char const* const* SunInfo::getLibraryPaths(int* size)
{
#if defined UNX
#if defined UNX && !defined MACOSX
static char const * ar[] = {
#if defined MACOSX && defined X86_64
// Oracle Java 7, under /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
"/lib/server",
"/lib"
#else
"/lib/" JFW_PLUGIN_ARCH "/client",
"/lib/" JFW_PLUGIN_ARCH "/server",
"/lib/" JFW_PLUGIN_ARCH "/native_threads",
"/lib/" JFW_PLUGIN_ARCH
#endif
};
*size = SAL_N_ELEMENTS(ar);
return ar;