Bug 518740 - The Equinox Framework does not start on ARM using Oracle
Embedded JRE

Additional changes from code review:
 - ensure streams are closed properly
 - update regex used to avoid extra trim operation.

Change-Id: I927eed5d66cff74fd8f494d32554248e9710e95e
Signed-off-by: Thomas Watson <tjwatson@us.ibm.com>
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/bundles/SystemBundleTests.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/bundles/SystemBundleTests.java
index 7ff03f2..5129c9f 100755
--- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/bundles/SystemBundleTests.java
+++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/bundles/SystemBundleTests.java
@@ -2690,6 +2690,8 @@
 			doTestJavaProfile("1.7", "JavaSE-1.7", null);
 			doTestJavaProfile("1.8", "JavaSE/compact3-1.8", "compact3");
 			doTestJavaProfile("1.8", "JavaSE/compact3-1.8", "\"compact3\"");
+			doTestJavaProfile("1.8", "JavaSE/compact3-1.8", " \"compact3\" ");
+			doTestJavaProfile("1.8", "JavaSE/compact3-1.8", " compact3 ");
 			doTestJavaProfile("1.8", "JavaSE-1.8", "\"compact4\"");
 			doTestJavaProfile("9", "JavaSE/compact3-1.8", "compact3");
 			doTestJavaProfile("9", "JavaSE/compact3-1.8", "\"compact3\"");
@@ -2706,7 +2708,12 @@
 			release.getParentFile().mkdirs();
 			Properties props = new Properties();
 			props.put("JAVA_PROFILE", releaseName);
-			props.store(new FileOutputStream(release), null);
+			FileOutputStream propStream = new FileOutputStream(release);
+			try {
+				props.store(propStream, null);
+			} finally {
+				propStream.close();
+			}
 			System.setProperty("java.home", release.getParentFile().getAbsolutePath());
 		}
 		System.setProperty("java.specification.version", javaSpecVersion);
diff --git a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/storage/Storage.java b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/storage/Storage.java
index e4f518c..d891eff 100644
--- a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/storage/Storage.java
+++ b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/storage/Storage.java
@@ -1432,13 +1432,12 @@
 							File release = new File(javaHome, "release"); //$NON-NLS-1$
 							if (release.exists()) {
 								Properties releaseProps = new Properties();
-								try {
-									releaseProps.load(new FileInputStream(release));
+								try (InputStream releaseStream = new FileInputStream(release)) {
+									releaseProps.load(releaseStream);
 									String releaseName = releaseProps.getProperty("JAVA_PROFILE"); //$NON-NLS-1$
 									if (releaseName != null) {
 										// make sure to remove extra quotes
-										releaseName = releaseName.trim();
-										releaseName = releaseName.replaceAll("^\"|\"$", ""); //$NON-NLS-1$ //$NON-NLS-2$
+										releaseName = releaseName.replaceAll("^\\s*\"?|\"?\\s*$", ""); //$NON-NLS-1$ //$NON-NLS-2$
 										embeddedProfileName = "_" + releaseName + "-"; //$NON-NLS-1$ //$NON-NLS-2$
 									}
 								} catch (IOException e) {