diff options
-rw-r--r-- | Assistant/Alert.hs | 7 | ||||
-rw-r--r-- | Assistant/Threads/Transferrer.hs | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/Assistant/Alert.hs b/Assistant/Alert.hs index c66621836..4c4906ef5 100644 --- a/Assistant/Alert.hs +++ b/Assistant/Alert.hs @@ -260,10 +260,13 @@ addFileAlert :: FilePath -> Alert addFileAlert = fileAlert (Tensed "Adding" "Added") {- This is only used as a success alert after a transfer, not during it. -} -transferFileAlert :: Direction -> FilePath -> Alert -transferFileAlert direction +transferFileAlert :: Direction -> Bool -> FilePath -> Alert +transferFileAlert direction True | direction == Upload = fileAlert "Uploaded" | otherwise = fileAlert "Downloaded" +transferFileAlert direction False + | direction == Upload = fileAlert "Upload failed" + | otherwise = fileAlert "Download failed" dataCombiner :: ([TenseChunk] -> [TenseChunk] -> [TenseChunk]) -> AlertCombiner dataCombiner combiner new old diff --git a/Assistant/Threads/Transferrer.hs b/Assistant/Threads/Transferrer.hs index ae0adf300..9a772d628 100644 --- a/Assistant/Threads/Transferrer.hs +++ b/Assistant/Threads/Transferrer.hs @@ -96,10 +96,10 @@ transferThread dstatus slots t info runner program = case (transferRemote info, (_, _, _, pid) <- createProcess (proc program $ toCommand params) { create_group = True } - status <- waitForProcess pid + ok <- (==) ExitSuccess <$> waitForProcess pid addAlert dstatus $ - makeAlertFiller (status == ExitSuccess) $ - transferFileAlert direction file + makeAlertFiller ok $ + transferFileAlert direction ok file where params = [ Param "transferkey" |