[project @ 2003-08-22 16:38:51 by sof]
[ghc-hetmet.git] / ghc / compiler / main / Finder.lhs
index 2a97fd9..adc33c7 100644 (file)
@@ -278,13 +278,13 @@ mkHomeModLocation mod_name src_filename = do
    let mod_basename = dots_to_slashes (moduleNameUserString mod_name)
        (basename,extension) = splitFilename src_filename
 
-   case my_prefix_match (reverse mod_basename) (reverse basename) of
+   case maybePrefixMatch (reverse mod_basename) (reverse basename) of
        Just ""   ->
           mkHomeModLocationSearched mod_name "."  mod_basename extension
-       Just rest -> do
+       Just rest@(r:_) | isPathSeparator r -> do
           let path = reverse (dropWhile (=='/') rest)
           mkHomeModLocationSearched mod_name path mod_basename extension
-       Nothing   -> do
+       _ -> do
          -- hPutStrLn stderr ("Warning: " ++ src_filename ++
          --                     ": filename and module name do not match")
          let (dir,basename,ext) = splitFilename3 src_filename