From 5513e71723fe36710e9532fc2d070d483dc70f4f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 16 Oct 2012 01:43:54 -0400 Subject: [PATCH] avoid partial !! in gpg list-keys parser --- Utility/Gpg.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Utility/Gpg.hs b/Utility/Gpg.hs index 8d25272d31..b5cffb1c5a 100644 --- a/Utility/Gpg.hs +++ b/Utility/Gpg.hs @@ -87,9 +87,9 @@ findPubKeys :: String -> IO KeyIds findPubKeys for = KeyIds . parse <$> readStrict params where params = [Params "--with-colons --list-public-keys", Param for] - parse = map keyIdField . filter pubKey . lines - pubKey = isPrefixOf "pub:" - keyIdField s = split ":" s !! 4 + parse = catMaybes . map (keyIdField . split ":") . lines + keyIdField ("pub":_:_:_:f:_) = Just f + keyIdField _ = Nothing {- Creates a block of high-quality random data suitable to use as a cipher. - It is armored, to avoid newlines, since gpg only reads ciphers up to the