src/jdk.packager/share/classes/jdk/packager/internal/DeployParams.java
branchJDK-8200758-branch
changeset 56836 40abf95122b0
parent 56821 565d54ca1f41
child 56848 f8a7c83f31f1
--- a/src/jdk.packager/share/classes/jdk/packager/internal/DeployParams.java	Fri Jul 13 10:41:07 2018 -0400
+++ b/src/jdk.packager/share/classes/jdk/packager/internal/DeployParams.java	Tue Jul 17 10:54:15 2018 -0400
@@ -568,19 +568,21 @@
             StandardBundlerParam.ADD_MODULES.getID(),
             StandardBundlerParam.LIMIT_MODULES.getID(),
             StandardBundlerParam.STRIP_NATIVE_COMMANDS.getID(),
+            StandardBundlerParam.FILE_ASSOCIATIONS.getID(),
             JLinkBundlerHelper.DETECT_MODULES.getID()
     ));
 
     @SuppressWarnings("unchecked")
     public void addBundleArgument(String key, Object value) {
         // special hack for multi-line arguments
-        if (multi_args.contains(key) && value instanceof String) {
+        if (multi_args.contains(key)) {
             Object existingValue = bundlerArguments.get(key);
-            if (existingValue instanceof String) {
+            if (existingValue instanceof String && value instanceof String) {
                 bundlerArguments.put(key, existingValue + "\n\n" + value);
-            } else if (existingValue instanceof List) {
-                ((List)existingValue).add(value);
-            } else if (existingValue instanceof Map && ((String)value).contains("=")) {
+            } else if (existingValue instanceof List && value instanceof List) {
+                ((List)existingValue).addAll((List)value);
+            } else if (existingValue instanceof Map &&
+                value instanceof String && ((String)value).contains("=")) {
                 String[] mapValues = ((String)value).split("=", 2);
                 ((Map)existingValue).put(mapValues[0], mapValues[1]);
             } else {