summaryrefslogtreecommitdiff
path: root/Assistant
diff options
context:
space:
mode:
Diffstat (limited to 'Assistant')
-rw-r--r--Assistant/Alert.hs7
-rw-r--r--Assistant/Threads/Transferrer.hs6
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"