Apply patch (FELIX-3844) to add some more Windows OS aliases.
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1441169 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/framework/src/main/java/org/apache/felix/framework/BundleImpl.java b/framework/src/main/java/org/apache/felix/framework/BundleImpl.java
index b2cc828..e46e2ff 100644
--- a/framework/src/main/java/org/apache/felix/framework/BundleImpl.java
+++ b/framework/src/main/java/org/apache/felix/framework/BundleImpl.java
@@ -1014,6 +1014,7 @@
// Uninstall the bundle.
getFramework().uninstallBundle(this);
}
+
private static final SecurityManagerEx m_smEx = new SecurityManagerEx();
private static final ClassLoader m_classloader = Felix.class.getClassLoader();
diff --git a/framework/src/main/java/org/apache/felix/framework/util/manifestparser/R4LibraryClause.java b/framework/src/main/java/org/apache/felix/framework/util/manifestparser/R4LibraryClause.java
index 3dc9fe8..0299041 100644
--- a/framework/src/main/java/org/apache/felix/framework/util/manifestparser/R4LibraryClause.java
+++ b/framework/src/main/java/org/apache/felix/framework/util/manifestparser/R4LibraryClause.java
@@ -134,17 +134,7 @@
private boolean checkOSNames(String currentOSName, String[] osnames)
{
- boolean win32 = currentOSName.startsWith("win") &&
- (currentOSName.equals("windows95")
- || currentOSName.equals("windows98")
- || currentOSName.equals("windowsnt")
- || currentOSName.equals("windows2000")
- || currentOSName.equals("windows2003")
- || currentOSName.equals("windows2008")
- || currentOSName.equals("windowsxp")
- || currentOSName.equals("windowsce")
- || currentOSName.equals("windowsvista")
- || currentOSName.equals("windows7"));
+ boolean win32 = currentOSName.startsWith("win") && !currentOSName.equals("windowsce");
for (int i = 0; (osnames != null) && (i < osnames.length); i++)
{
@@ -381,7 +371,11 @@
}
else if (value.indexOf("2008") >= 0)
{
- os = "windows2008";
+ os = "windowsserver2008";
+ }
+ else if (value.indexOf("2012") >= 0)
+ {
+ os = "windowsserver2012";
}
else if (value.indexOf("xp") >= 0)
{
@@ -395,11 +389,18 @@
{
os = "windowsvista";
}
- // will need better test here if any future Windows version has a 7 in it!
- else if (value.indexOf("7") >= 0)
+ else if ((value.indexOf(" 7") >= 0) || value.equals("win7"))
{
os = "windows7";
}
+ else if ((value.indexOf(" 8") >= 0) || value.equals("win8"))
+ {
+ os = "windows8";
+ }
+ else if ((value.indexOf(" 9") >= 0) || value.equals("win9"))
+ {
+ os = "windows9";
+ }
return os;
}
else if (value.startsWith("linux"))
@@ -465,7 +466,7 @@
{
value = value.toLowerCase();
- if (value.startsWith("x86-64") || value.startsWith("amd64") ||
+ if (value.startsWith("x86-64") || value.startsWith("amd64") ||
value.startsWith("em64") || value.startsWith("x86_64"))
{
return "x86-64";