in rake-runner-agent/src/jetbrains/buildServer/agent/rakerunner/utils/EnvUtil.java [29:52]
public static Map<String, String> mergeIntoNewEnv(@NotNull final Map<String, String> modified,
@NotNull final Map<String, String> original,
@NotNull final Collection<String> restricted) {
final HashMap<String, String> map = new HashMap<String, String>();
for (String key : modified.keySet()) {
final String ov = original.get(key);
if (restricted.contains(key)) {
continue;
}
final String mv = modified.get(key);
if (ov == null || !ov.equals(mv)) {
map.put(key, mv);
} else {
map.put(key, ov);
}
}
for (String key : restricted) {
final String ov = original.get(key);
if (ov != null) {
map.put(key, ov);
}
}
return map;
}