diff options
author | 2012-08-27 13:52:48 -0400 | |
---|---|---|
committer | 2012-08-27 13:52:48 -0400 | |
commit | 11c1f32c51707e838dd154afe3d2a1d25e9d18ef (patch) | |
tree | 5aff15be697a85622dcfd98cad07b7fcb975fd8a | |
parent | 2433f6ca5a602f55986bcd85c20034c88cc44a3b (diff) |
improve display of failed transfer alert
-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" |