mirror of
https://github.com/commercialhaskell/stackage-server.git
synced 2026-01-12 04:08:29 +01:00
Handle Tar exceptions when grabbing extra files
@snoyberg
This commit is contained in:
parent
e1dcab25e7
commit
d77830555f
@ -258,11 +258,12 @@ grabExtraFiles :: ( MonadActive m
|
||||
-> m (Maybe Html, Maybe Html, Maybe Html) -- ^ README, changelog, license
|
||||
grabExtraFiles name version lfiles = runResourceT $ do
|
||||
msrc <- sourceHackageSdist name version
|
||||
case msrc of
|
||||
Nothing -> return mempty
|
||||
Just src -> do
|
||||
bss <- lazyConsume $ src $= ungzip
|
||||
tarSource (Tar.read $ fromChunks bss) $$ foldlC go mempty
|
||||
handle (\(_ :: Tar.FormatError) -> return (Nothing,Nothing,Nothing)) $
|
||||
case msrc of
|
||||
Nothing -> return mempty
|
||||
Just src -> do
|
||||
bss <- lazyConsume $ src $= ungzip
|
||||
tarSource (Tar.read $ fromChunks bss) $$ foldlC go mempty
|
||||
where
|
||||
go trip@(mreadme, mchangelog, mlicense) entry =
|
||||
case Tar.entryContent entry of
|
||||
|
||||
Loading…
Reference in New Issue
Block a user