diff options
author | eaceaser <eac@twitter.com> | 2010-10-24 20:18:18 -0400 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-07 02:08:37 -0500 |
commit | 412137b473b29cba17806196c3de3503e2c791e3 (patch) | |
tree | 177a22ca25c03ca3e77102544dd33203a008d72e /libraries/eval | |
parent | 8a83392cd099e22bdc34808156bf4429eced66a5 (diff) | |
download | cbt-412137b473b29cba17806196c3de3503e2c791e3.tar.gz cbt-412137b473b29cba17806196c3de3503e2c791e3.tar.bz2 cbt-412137b473b29cba17806196c3de3503e2c791e3.zip |
Make evaluator.apply synchronized to prevent any goofiness
Diffstat (limited to 'libraries/eval')
-rw-r--r-- | libraries/eval/Eval.scala | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libraries/eval/Eval.scala b/libraries/eval/Eval.scala index 6d1bd6e..8d38caa 100644 --- a/libraries/eval/Eval.scala +++ b/libraries/eval/Eval.scala @@ -69,12 +69,13 @@ object Eval { private val compilerPath = jarPathOfClass("scala.tools.nsc.Interpreter") private val libPath = jarPathOfClass("scala.ScalaObject") private val jvmId = java.lang.Math.abs(new Random().nextInt()) + private val md = MessageDigest.getInstance("SHA") /** * Eval[Int]("1 + 1") // => 2 */ - def apply[T](stringToEval: String): T = { - val md = MessageDigest.getInstance("SHA") + def apply[T](stringToEval: String): T = synchronized { + md.reset() val digest = md.digest(stringToEval.getBytes()) val sha = new BigInteger(1, digest).toString(16) |