From bc5726ccd274811d5ec26619866db0bf915518ce Mon Sep 17 00:00:00 2001 From: Lemmih Date: Mon, 29 Jan 2007 03:16:34 +0000 Subject: [PATCH] Version handling wibbles. --- src/System/Plugins/Env.hs | 6 ++++-- src/System/Plugins/Load.hs | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/System/Plugins/Env.hs b/src/System/Plugins/Env.hs index e9294e8..87b3946 100644 --- a/src/System/Plugins/Env.hs +++ b/src/System/Plugins/Env.hs @@ -157,7 +157,7 @@ env = unsafePerformIO $ do ref2 <- newIORef emptyFM p <- grabDefaultPkgConf ref3 <- newIORef p -- package.conf info - ref4 <- newIORef (S.fromList ["base","Cabal","haskell-src"]) + ref4 <- newIORef (S.fromList ["base","Cabal-1.1.6","haskell-src-1.0"]) -- FIXME ref5 <- newIORef emptyFM -- merged files return (mvar, ref1, ref2, ref3, ref4, ref5) {-# NOINLINE env #-} @@ -284,7 +284,9 @@ addPkgConf f = do union :: PkgEnvs -> [PackageConfig] -> PkgEnvs union ls ps' = let fm = emptyFM -- new FM for this package.conf - in foldr (\p fm' -> addToFM fm' (packageName p) p) fm ps' : ls + in foldr (\p fm' -> if packageName_ p == "base" + then addToFM fm' (packageName_ p) p + else addToFM fm' (packageName p) p) fm ps' : ls -- -- | generate a PkgEnv from the system package.conf diff --git a/src/System/Plugins/Load.hs b/src/System/Plugins/Load.hs index 5be2ee5..1374eb3 100644 --- a/src/System/Plugins/Load.hs +++ b/src/System/Plugins/Load.hs @@ -413,7 +413,7 @@ loadFunction_ :: String -> String -> IO (Maybe a) loadFunction_ m valsym - = do let symbol = prefixUnderscore++m++"_"++(encode valsym)++"_closure" + = do let symbol = prefixUnderscore++encode m++"_"++(encode valsym)++"_closure" #if DEBUG putStrLn $ "Looking for <<"++symbol++">>" #endif