safe output to terminal for calckey inprogress and lookupkey
These are quite low-level, but still there is no point in displaying escape sequences that have been embedded in a key to the terminal. I think these are the only remaining commands that didn't use safe output, except for cases where git-annex is speaking a protocol to itself. Sponsored-by: Kevin Mueller on Patreon
This commit is contained in:
parent
a576fc3b12
commit
3346aa9659
4 changed files with 24 additions and 12 deletions
|
@ -11,6 +11,8 @@ import Command
|
|||
import Backend (genKey, defaultBackend)
|
||||
import Types.KeySource
|
||||
import Utility.Metered
|
||||
import Utility.Terminal
|
||||
import Utility.SafeOutput
|
||||
|
||||
cmd :: Command
|
||||
cmd = noCommit $ noMessages $ dontCheck repoExists $
|
||||
|
@ -23,7 +25,9 @@ cmd = noCommit $ noMessages $ dontCheck repoExists $
|
|||
run :: () -> SeekInput -> String -> Annex Bool
|
||||
run _ _ file = tryNonAsync (genKey ks nullMeterUpdate =<< defaultBackend) >>= \case
|
||||
Right (k, _) -> do
|
||||
liftIO $ putStrLn $ serializeKey k
|
||||
IsTerminal isterminal <- liftIO $ checkIsTerminal stdout
|
||||
let sk = serializeKey k
|
||||
liftIO $ putStrLn $ if isterminal then safeOutput sk else sk
|
||||
return True
|
||||
Left _err -> return False
|
||||
where
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue