diff options
-rw-r--r-- | GitAnnexShell.hs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/GitAnnexShell.hs b/GitAnnexShell.hs index 4436ab3e1..dc15a6ce8 100644 --- a/GitAnnexShell.hs +++ b/GitAnnexShell.hs @@ -104,12 +104,10 @@ external params = do - rsync and not be useful. -} partitionParams :: [String] -> ([String], [String]) -partitionParams params - | null segments = ([], []) - | length segments < 2 = (segments !! 0, []) - | otherwise = (segments !! 0, segments !! 1) - where - segments = segment (== "--") params +partitionParams ps = case segment (== "--") ps of + params:fieldparams:_ -> (params, fieldparams) + [params] -> (params, []) + _ -> ([], []) parseFields :: [String] -> [(String, String)] parseFields = map (separate (== '=')) |