From 0564c3aa3f17cb9e7e36d63f5432f1b0487250d6 Mon Sep 17 00:00:00 2001 From: Christopher Vogt Date: Fri, 29 Apr 2016 01:38:55 -0400 Subject: Do not cache classloaders for Builds. This wasn't supposed to happen yet --- stage1/Stage1Lib.scala | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'stage1/Stage1Lib.scala') diff --git a/stage1/Stage1Lib.scala b/stage1/Stage1Lib.scala index 5fd19a8..7b09be2 100644 --- a/stage1/Stage1Lib.scala +++ b/stage1/Stage1Lib.scala @@ -343,19 +343,19 @@ ${files.sorted.mkString(" \\\n")} if( dependencies.exists(_.needsUpdate) && cache.persistent.containsKey(cp) ){ cache.persistent.remove(cp) } - cache.persistent.get( - cp, - new MultiClassLoader( - dependencies.map( classLoaderRecursion(_, latest, cache) ) - ) - ) + def cl = new MultiClassLoader( dependencies.map( classLoaderRecursion(_, latest, cache) ) ) + if(d.isInstanceOf[BuildInterface]) + cl // Don't cache builds right now. We need to fix invalidation first. + else + cache.persistent.get( cp, cl ) } } val a = actual( dependency, latest ) - cache.persistent.get( - a.classpath.string, - new cbt.URLClassLoader( a.exportedClasspath, dependencyClassLoader(latest, cache) ) - ) + def cl = new cbt.URLClassLoader( a.exportedClasspath, dependencyClassLoader(latest, cache) ) + if(d.isInstanceOf[BuildInterface]) + cl + else + cache.persistent.get( a.classpath.string, cl ) } } -- cgit v1.2.3