summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/cmd
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2015-03-02 23:09:47 -0800
committerSom Snytt <som.snytt@gmail.com>2015-03-02 23:53:28 -0800
commit17caf79d158ca13776dff6d7461bba362b7a2f2f (patch)
tree509806eae49225f555fcb97efaade0fa29a4fc26 /src/compiler/scala/tools/cmd
parent178e8df9b6a91375a6162721a0cbc2d90bcc7451 (diff)
downloadscala-17caf79d158ca13776dff6d7461bba362b7a2f2f.tar.gz
scala-17caf79d158ca13776dff6d7461bba362b7a2f2f.tar.bz2
scala-17caf79d158ca13776dff6d7461bba362b7a2f2f.zip
SI-7775 Exclude nulls when iterating sys props
The previous fix to deal with concurrent modification of system properties doesn't handle null results introduced when a property is removed. This commit filters nulls for safety, and also adds a `names` method to `sys.SystemProperties`. The test is upgraded.
Diffstat (limited to 'src/compiler/scala/tools/cmd')
-rw-r--r--src/compiler/scala/tools/cmd/Property.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/cmd/Property.scala b/src/compiler/scala/tools/cmd/Property.scala
index b1d951a5c4..e6262a7e40 100644
--- a/src/compiler/scala/tools/cmd/Property.scala
+++ b/src/compiler/scala/tools/cmd/Property.scala
@@ -9,6 +9,7 @@ package cmd
import nsc.io._
import java.util.Properties
import java.io.FileInputStream
+import scala.sys.SystemProperties
/** Contains logic for translating a property key/value pair into
* equivalent command line arguments. The default settings will
@@ -58,7 +59,7 @@ trait Property extends Reference {
returning(new Properties)(_ load new FileInputStream(file.path))
def systemPropertiesToOptions: List[String] =
- propertiesToOptions(System.getProperties)
+ propertiesToOptions(new SystemProperties().toList)
def propertiesToOptions(file: File): List[String] =
propertiesToOptions(loadProperties(file))