From ce477ae0b39b97a82a86776e076492120e3180eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Tue, 15 Apr 2025 21:28:43 +0200 Subject: Do not consider argument starting with dash to be a path --- src/Main.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/Main.hs b/src/Main.hs index 5fdd128..89fab39 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -100,9 +100,10 @@ lookupCommand name = find p commands main :: IO () main = do args <- getArgs + let isPathArgument path = maybe False (/= '-') (listToMaybe path) && any isPathSeparator path let ( mbRootPath, args' ) = case args of (path : rest) - | any isPathSeparator path -> ( Just path, rest ) + | isPathArgument path -> ( Just path, rest ) _ -> ( Nothing, args ) (opts, cmdargs) <- case getOpt RequireOrder options args' of @@ -145,7 +146,7 @@ main = do ( Just path, _ ) -> return ( Just path, cmdargs ) ( _, path : rest ) - | any isPathSeparator path + | isPathArgument path -> return ( Just path, rest ) _ -> return ( Nothing , cmdargs ) -- cgit v1.2.3