[darcs-devel] darcs patch: Simplify getCurrentDirectorySansDarcs out of existence.
Kevin Quick
quick at sparq.org
Mon Nov 19 05:20:21 UTC 2007
This could still get false positive matches on things like: /foo/
_darcs_is_great/bar/baz (although it nicely sidesteps any impossible
cases :-).
-KQ
On 18 Nov 2007, at 9:13 PM, Eric Kow wrote:
> Oops! Amended version.
>
> Mon Nov 19 05:13:26 CET 2007 Eric Kow <eric.kow at gmail.com>
> * Simplify getCurrentDirectorySansDarcs out of existence.
>
> It was buggy and needlessly complicated.
>
>
> New patches:
>
> [Simplify getCurrentDirectorySansDarcs out of existence.
> Eric Kow <eric.kow at gmail.com>**20071119041326
>
> It was buggy and needlessly complicated.
> ] {
> hunk ./src/Darcs/Lock.lhs 36
> -import Data.List ( isPrefixOf, inits )
> hunk ./src/Darcs/Lock.lhs 63
> -#include "impossible.h"
> hunk ./src/Darcs/Lock.lhs 175
> - look_for_tmp [] = try_directory "/tmp"
> getCurrentDirectorySansDarcs
> + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap`
> getCurrentDirectory)
> hunk ./src/Darcs/Lock.lhs 180
> -getCurrentDirectorySansDarcs :: IO FilePath
> -getCurrentDirectorySansDarcs = do
> - c <- getCurrentDirectory
> - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of
> - [] -> impossible
> - (d:_) -> return d
> - where no_darcs x = not $ "_darcs" `isPrefixOf` x
> +sansDarcs :: FilePath -> FilePath
> +sansDarcs "" = ""
> +sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = ""
> +sansDarcs (x:xs) = x : sansDarcs xs
> }
>
> Context:
>
> [TAG darcs unstable 2007-11-04
> Eric Kow <eric.kow at loria.fr>**20071104235616]
> Patch bundle hash:
> 7ce6830afbed903a55c05dc1fb803b2143481e1d
> _______________________________________________
> darcs-devel mailing list
> darcs-devel at darcs.net
> http://lists.osuosl.org/mailman/listinfo/darcs-devel
More information about the darcs-devel
mailing list