From 733a90bbd382683fa788aa6949f0fac11ba6504b Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 30 May 2013 13:55:22 -0400 Subject: 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. --- Command/WebApp.hs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'Command') 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 -- cgit v1.2.3