From fdc887a7c076883c71b5f3f608eb2b458eabbe16 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 16 Oct 2012 01:43:54 -0400 Subject: avoid partial !! in gpg list-keys parser --- Utility/Gpg.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Utility') diff --git a/Utility/Gpg.hs b/Utility/Gpg.hs index 8d25272d3..b5cffb1c5 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 -- cgit v1.2.3