diff options
author | Joey Hess <joeyh@joeyh.name> | 2015-04-19 00:38:29 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2015-04-19 00:38:29 -0400 |
commit | c5910fd179d374f644ab3c843b243a51a7df9b24 (patch) | |
tree | 9623da2ab0411f3862d415a17be7be567688b714 /Git | |
parent | bf1bf600fc94f6b95d5723473b148b35ab32073d (diff) |
removed all uses of undefined from code base
It's a code smell, can lead to hard to diagnose error messages.
Diffstat (limited to 'Git')
-rw-r--r-- | Git/CatFile.hs | 2 | ||||
-rw-r--r-- | Git/LsFiles.hs | 13 |
2 files changed, 8 insertions, 7 deletions
diff --git a/Git/CatFile.hs b/Git/CatFile.hs index a1a0a0d28..c63a0647c 100644 --- a/Git/CatFile.hs +++ b/Git/CatFile.hs @@ -110,4 +110,4 @@ catTree h treeref = go <$> catObjectDetails h treeref parsemodefile b = let (modestr, file) = separate (== ' ') (decodeBS b) in (file, readmode modestr) - readmode = fst . fromMaybe (0, undefined) . headMaybe . readOct + readmode = fromMaybe 0 . fmap fst . headMaybe . readOct diff --git a/Git/LsFiles.hs b/Git/LsFiles.hs index c23c282d0..e80c1b288 100644 --- a/Git/LsFiles.hs +++ b/Git/LsFiles.hs @@ -181,12 +181,13 @@ parseUnmerged s | otherwise = case words metadata of (rawblobtype:rawsha:rawstage:_) -> do stage <- readish rawstage :: Maybe Int - unless (stage == 2 || stage == 3) $ - fail undefined -- skip stage 1 - blobtype <- readBlobType rawblobtype - sha <- extractSha rawsha - return $ InternalUnmerged (stage == 2) file - (Just blobtype) (Just sha) + if stage /= 2 && stage /= 3 + then Nothing + else do + blobtype <- readBlobType rawblobtype + sha <- extractSha rawsha + return $ InternalUnmerged (stage == 2) file + (Just blobtype) (Just sha) _ -> Nothing where (metadata, file) = separate (== '\t') s |