[commit: Cabal] master: in parsing user constraints, require a space to separate the initial package name (4bfb998)
Ian Lynagh
igloo at earth.li
Fri Nov 4 18:07:31 CET 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/4bfb99879f5b2742c398f1b8e28a9cfd126ab2f6
>---------------------------------------------------------------
commit 4bfb99879f5b2742c398f1b8e28a9cfd126ab2f6
Author: Andres Loeh <andres at well-typed.com>
Date: Thu Oct 27 13:30:21 2011 +0000
in parsing user constraints, require a space to separate the initial package name
>---------------------------------------------------------------
cabal-install/Distribution/Client/Targets.hs | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/cabal-install/Distribution/Client/Targets.hs b/cabal-install/Distribution/Client/Targets.hs
index 978388d..bcc7d2d 100644
--- a/cabal-install/Distribution/Client/Targets.hs
+++ b/cabal-install/Distribution/Client/Targets.hs
@@ -715,17 +715,19 @@ instance Text UserConstraint where
parse = parse >>= parseConstraint
where
+ spaces = Parse.satisfy isSpace >> Parse.skipSpaces
+
parseConstraint pkgname =
(parse >>= return . UserConstraintVersion pkgname)
- +++ (do Parse.skipSpaces
+ +++ (do spaces
_ <- Parse.string "installed"
return (UserConstraintInstalled pkgname))
- +++ (do Parse.skipSpaces
+ +++ (do spaces
_ <- Parse.string "source"
return (UserConstraintSource pkgname))
<++ (parseFlagAssignment >>= (return . UserConstraintFlags pkgname))
- parseFlagAssignment = Parse.many1 (Parse.skipSpaces >> parseFlagValue)
+ parseFlagAssignment = Parse.many1 (spaces >> parseFlagValue)
parseFlagValue =
(do Parse.optional (Parse.char '+')
f <- parseFlagName
More information about the Cvs-libraries
mailing list