diff --git a/org.eclipse.pde.build.tests/pom.xml b/org.eclipse.pde.build.tests/pom.xml
index ff9a688..0ce709b 100644
--- a/org.eclipse.pde.build.tests/pom.xml
+++ b/org.eclipse.pde.build.tests/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.build</artifactId>
     <groupId>eclipse.pde.build</groupId>
-    <version>4.11.0-SNAPSHOT</version>
+    <version>4.12.0-SNAPSHOT</version>
   </parent>
   <groupId>org.eclipse.pde</groupId>
   <artifactId>org.eclipse.pde.build.tests</artifactId>
diff --git a/org.eclipse.pde.build/META-INF/MANIFEST.MF b/org.eclipse.pde.build/META-INF/MANIFEST.MF
index 2a16c6f..a86fe0b 100644
--- a/org.eclipse.pde.build/META-INF/MANIFEST.MF
+++ b/org.eclipse.pde.build/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.pde.build;singleton:=true
-Bundle-Version: 3.10.300.qualifier
+Bundle-Version: 3.10.400.qualifier
 Bundle-ClassPath: pdebuild.jar
 Bundle-Activator: org.eclipse.pde.internal.build.BuildActivator
 Bundle-Vendor: %providerName
diff --git a/org.eclipse.pde.build/pom.xml b/org.eclipse.pde.build/pom.xml
index 5d622d9..7ad6699 100644
--- a/org.eclipse.pde.build/pom.xml
+++ b/org.eclipse.pde.build/pom.xml
@@ -14,10 +14,10 @@
   <parent>
     <artifactId>eclipse.pde.build</artifactId>
     <groupId>eclipse.pde.build</groupId>
-    <version>4.11.0-SNAPSHOT</version>
+    <version>4.12.0-SNAPSHOT</version>
   </parent>
   <groupId>org.eclipse.pde</groupId>
   <artifactId>org.eclipse.pde.build</artifactId>
-  <version>3.10.300-SNAPSHOT</version>
+  <version>3.10.400-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/org.eclipse.pde.build/src/org/eclipse/pde/build/IAntScript.java b/org.eclipse.pde.build/src/org/eclipse/pde/build/IAntScript.java
index b2efb07..9f92f5a 100644
--- a/org.eclipse.pde.build/src/org/eclipse/pde/build/IAntScript.java
+++ b/org.eclipse.pde.build/src/org/eclipse/pde/build/IAntScript.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2013 IBM Corporation and others.
+ * Copyright (c) 2006, 2019 IBM Corporation and others.
  *
  * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
@@ -71,29 +71,29 @@
 	public void printAttribute(String name, String value, boolean mandatory);
 
 	/**
-	 * Print tagName as an xml begin tag (<code>&lt;tagName&gt;<code>).
+	 * Print tagName as an xml begin tag (<code>&lt;tagName&gt;</code>).
 	 * @param tagName the tag to print.
 	 */
 	public void printStartTag(String tagName);
 
 	/**
-	 * Print tagName as an xml begin tag with attributes (<code>&lt;tagName [attributes...] &gt;<code>).
-	 * @param tag
-	 * @param attributes
+	 * Print tagName as an xml begin tag with attributes (<code>&lt;tagName [attributes...] &gt;</code>).
+	 * @param tag the tag to print.
+	 * @param attributes attributes for the tag.
 	 * @since 3.6
 	 */
 	public void printStartTag(String tag, Map<String, String> attributes);
 
 	/**
-	 * Print tagName as an xml end tag (<code>&lt;/tagName&gt;<code>).
+	 * Print tagName as an xml end tag (<code>&lt;/tagName&gt;</code>).
 	 * @param endTag the tag to print.
 	 */
 	public void printEndTag(String endTag);
 
 	/**
-	 * Print an xml element with attributes (<code>&lt;tagName [attributes...] /&gt;<code>).
-	 * @param tag
-	 * @param attributes
+	 * Print an xml element with attributes (<code>&lt;tagName [attributes...] /&gt;</code>).
+	 * @param tag the tag to print
+	 * @param attributes the attributes for the tag
 	 * @since 3.6
 	 */
 	public void printElement(String tag, Map<String, String> attributes);
@@ -140,9 +140,9 @@
 	public void printEchoTask(String file, String message, String level);
 
 	/**
-	 * Print the beginning of a <a href="http://ant.apache.org/manual/Tasks/macrodef.html">macro definition</a>
-	 * @param macroName
-	 * @param attributes
+	 * Print the beginning of a <a href="http://ant.apache.org/manual/Tasks/macrodef.html">macro definition</a>.
+	 * @param macroName the name of the macro
+	 * @param attributes the attributes of the macro
 	 * @since 3.6
 	 */
 	public void printMacroDef(String macroName, List<String> attributes);
diff --git a/org.eclipse.pde.build/src/org/eclipse/pde/build/IFetchFactory.java b/org.eclipse.pde.build/src/org/eclipse/pde/build/IFetchFactory.java
index bfd3875..89baeac 100644
--- a/org.eclipse.pde.build/src/org/eclipse/pde/build/IFetchFactory.java
+++ b/org.eclipse.pde.build/src/org/eclipse/pde/build/IFetchFactory.java
@@ -1,5 +1,5 @@
 /**********************************************************************
- * Copyright (c) 2004, 2013 Eclipse Foundation and others.
+ * Copyright (c) 2004, 2019 Eclipse Foundation and others.
  *
  *   This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
@@ -32,7 +32,7 @@
  * The format of <code>elementType</code> and <code>elementName</code> is fixed.
  * The factories specify the value of <code>repositoryTag</code> and the format of the <code>repositoryDetails</code>.
  * <code>repositoryTag</code> and <code>repositoryDetails</code> becomes defacto APIs. 
- * </br>
+ * <br>
  * <code>repositoryTag</code> should match the factory id used when declaring the factory extension. For example, for the CVS the value is "CVS". 
  * <code>repositoryDetails</code> should contains enough details to allow the factory to generate a fetch script retrieving the element.
   * </p>
diff --git a/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/AbstractScriptGenerator.java b/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/AbstractScriptGenerator.java
index 7f51a80..d1ccfa6 100644
--- a/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/AbstractScriptGenerator.java
+++ b/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/AbstractScriptGenerator.java
@@ -127,9 +127,8 @@
 	}
 
 	public static void setConfigInfo(String spec) throws CoreException {
-		configInfos.clear();
 		String[] configs = Utils.getArrayFromStringWithBlank(spec, "&"); //$NON-NLS-1$
-		configInfos = new ArrayList<>(configs.length);
+		List<Config> infos = new ArrayList<>(configs.length);
 		String[] os = new String[configs.length];
 		String[] ws = new String[configs.length];
 		String[] archs = new String[configs.length];
@@ -140,10 +139,11 @@
 				throw new CoreException(error);
 			}
 			Config aConfig = new Config(configs[i]);
-			if (aConfig.equals(Config.genericConfig()))
-				configInfos.add(Config.genericConfig());
-			else
-				configInfos.add(aConfig);
+			if (aConfig.equals(Config.genericConfig())) {
+				infos.add(Config.genericConfig());
+			} else {
+				infos.add(aConfig);
+			}
 
 			// create a list of all ws, os and arch to feed the SiteManager
 			os[i] = aConfig.getOs();
@@ -153,6 +153,7 @@
 		SiteManager.setOS(Utils.getStringFromArray(os, ",")); //$NON-NLS-1$
 		SiteManager.setWS(Utils.getStringFromArray(ws, ",")); //$NON-NLS-1$
 		SiteManager.setArch(Utils.getStringFromArray(archs, ",")); //$NON-NLS-1$
+		configInfos = infos;
 	}
 
 	public void setWorkingDirectory(String location) {
diff --git a/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/FeatureGenerator.java b/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/FeatureGenerator.java
index cecda1f..597deda 100644
--- a/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/FeatureGenerator.java
+++ b/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/FeatureGenerator.java
@@ -374,7 +374,7 @@
 			writer.startTag(FEATURE, parameters, true);
 
 			boolean fragment = false;
-			List<Config> configs = getConfigInfos();
+			List<Config> configs = new ArrayList<>(getConfigInfos());
 			//we do the generic config first as a special case
 			configs.remove(Config.genericConfig());
 			Iterator<Config> configIterator = configs.iterator();
diff --git a/pom.xml b/pom.xml
index 6aeaf86..dbcb7c7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <groupId>org.eclipse</groupId>
     <artifactId>eclipse-platform-parent</artifactId>
-    <version>4.11.0-SNAPSHOT</version>
+    <version>4.12.0-SNAPSHOT</version>
     <relativePath>../eclipse-platform-parent</relativePath>
   </parent>
 
