summaryrefslogtreecommitdiff
path: root/Command
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-05-30 13:55:22 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-05-30 13:55:22 -0400
commit733a90bbd382683fa788aa6949f0fac11ba6504b (patch)
tree4de1785acd9134d42dc13c833ea9701f0702070a /Command
parentdb7f7df4051dae385ba4fa34fab3a62abb883509 (diff)
android dupped stderr workaround
Avoid using dupped stderr, since http://git-annex.branchable.com/bugs/warning_-_WebApp_crashed:___60__file_descriptor_15__62__:_hPutStr:_illegal_operation___40__handle_is_closed__41___on_Android/#comment-a24c73803fb10bd35afdc10d50e071c8 seems to involve that handle not being dupped originally, or perhaps getting closed when the web browser is started on Android. Using the dupped stdout is known to work before starting the web browser, so it should work after -- unless perhaps starting it closes both handles. In any case, there's no real need to write to stderr here.
Diffstat (limited to 'Command')
-rw-r--r--Command/WebApp.hs7
1 files changed, 4 insertions, 3 deletions
diff --git a/Command/WebApp.hs b/Command/WebApp.hs
index 0a8c62be8..ab2e70025 100644
--- a/Command/WebApp.hs
+++ b/Command/WebApp.hs
@@ -164,7 +164,7 @@ openBrowser mcmd htmlshim realurl outh errh = do
{- The Android app has a menu item that opens this file. -}
writeFile "/sdcard/git-annex.home/.git-annex-url" realurl
#endif
- hPutStrLn (fromMaybe stdout outh) $ "Launching web browser on " ++ url
+ toconsole $ "Launching web browser on " ++ url
hFlush stdout
environ <- cleanEnvironment
(_, _, _, pid) <- createProcess p
@@ -174,11 +174,12 @@ openBrowser mcmd htmlshim realurl outh errh = do
}
exitcode <- waitForProcess pid
unless (exitcode == ExitSuccess) $ do
- hPutStrLn (fromMaybe stderr errh) "failed to start web browser"
+ toconsole "failed to start web browser"
#ifdef __ANDROID__
- hPutStrLn (fromMaybe stderr errh) "To open the WebApp, go to the menu and select \"Open WebApp\""
+ toconsole "To open the WebApp, go to the menu and select \"Open WebApp\""
#endif
where
+ toconsole = hPutStrLn (fromMaybe stdout outh)
p = case mcmd of
Just cmd -> proc cmd [htmlshim]
Nothing -> browserProc url