addurl: Fix encoding of filename queried from youtube-dl when in --fast mode.
And also now in non-fast mode, since it was just changed to query for the filename separately. And avoid processTranscript which mixed up stdout and stderr and could have led to weirdness if there were warnings that didn't get suppressed.
This commit is contained in:
parent
0b0d8ad54b
commit
2bfdd690e2
2 changed files with 13 additions and 2 deletions
|
@ -24,6 +24,7 @@ import Utility.HtmlDetect
|
|||
import Logs.Transfer
|
||||
|
||||
import Network.URI
|
||||
import Control.Concurrent.Async
|
||||
|
||||
-- Runs youtube-dl in a work directory, to download a single media file
|
||||
-- from the url. Reutrns the path to the media file in the work directory.
|
||||
|
@ -168,8 +169,16 @@ youtubeDlFileName' url
|
|||
, Param "--get-filename"
|
||||
, Param "--no-warnings"
|
||||
]
|
||||
(output, ok) <- liftIO $ processTranscript "youtube-dl"
|
||||
(toCommand opts) Nothing
|
||||
(Nothing, Just o, Just e, pid) <- liftIO $ createProcess
|
||||
(proc "youtube-dl" (toCommand opts))
|
||||
{ std_out = CreatePipe
|
||||
, std_err = CreatePipe
|
||||
}
|
||||
output <- liftIO $ fmap fst $
|
||||
hGetContentsStrict o
|
||||
`concurrently`
|
||||
hGetContentsStrict e
|
||||
ok <- liftIO $ checkSuccessProcess pid
|
||||
return $ case (ok, lines output) of
|
||||
(True, (f:_)) | not (null f) -> Right f
|
||||
_ -> nomedia
|
||||
|
|
|
@ -8,6 +8,8 @@ git-annex (6.20171215) UNRELEASED; urgency=medium
|
|||
* addurl: When the file youtube-dl will download is already an annexed
|
||||
file, don't download it again and fail to overwrite it, instead just do
|
||||
nothing, like it used to when quvi was used.
|
||||
* addurl: Fix encoding of filename queried from youtube-dl when in
|
||||
--fast mode.
|
||||
|
||||
-- Joey Hess <id@joeyh.name> Wed, 20 Dec 2017 12:11:46 -0400
|
||||
|
||||
|
|
Loading…
Reference in a new issue