Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java b/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java
index f850c7c09..c91dd13ee 100644
--- a/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java
+++ b/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java
@@ -94,8 +94,14 @@ public class EquinoxManipulatorImpl implements Manipulator {
if (dotLocation != -1)
launcherName = launcherName.substring(0, dotLocation);
File launcherFolder = launcher.getParentFile();
- if (org.eclipse.osgi.service.environment.Constants.OS_MACOSX.equals(launcherData.getOS()))
- launcherFolder = launcherData.getFwConfigLocation().getParentFile();
+ if (org.eclipse.osgi.service.environment.Constants.OS_MACOSX.equals(launcherData.getOS())) {
+ if (launcherData.getFwConfigLocation() != null)
+ launcherFolder = launcherData.getFwConfigLocation().getParentFile();
+ else if (launcherData.getFwPersistentDataLocation() != null)
+ launcherFolder = launcherData.getFwPersistentDataLocation().getParentFile();
+ else
+ throw new IllegalStateException("Not able to determine launcher ini file from " + launcherData); //$NON-NLS-1$
+ }
File result = new File(launcherFolder, launcherName + EquinoxConstants.INI_EXTENSION);
return result;
}

Back to the top