When re-execing git-annex, use current program location, rather than ~/.config/git-annex/program, when possible.
Most of the time, there will be no discreprancy between programPath and readProgramFile. But, the programFile might have been written by an old version of git-annex that is still installed, while a newer one is currently running. In this case, we want to run the same one that's currently running. This is especially important for things like the GIT_SSH=git-annex used for ssh connection caching. The only code that still uses readProgramFile directly is the upgrade code, which needs to know where the standalone git-annex was installed, in order to upgrade it.
This commit is contained in:
parent
b9275b65f9
commit
450ee53ab6
14 changed files with 28 additions and 25 deletions
|
@ -28,7 +28,7 @@ import Logs.UUID
|
|||
import Assistant.RemoteControl
|
||||
import Types.Creds
|
||||
import Assistant.CredPairCache
|
||||
import Config.Files
|
||||
import Annex.Path
|
||||
import Utility.Tmp
|
||||
import Utility.FileMode
|
||||
import Utility.ThreadScheduler
|
||||
|
@ -381,7 +381,7 @@ sshAuthTranscript sshinput opts input = case inputAuthMethod sshinput of
|
|||
Just (fromMaybe "" input)
|
||||
|
||||
setupAskPass = do
|
||||
program <- liftIO readProgramFile
|
||||
program <- liftIO programPath
|
||||
v <- getCachedCred login
|
||||
liftIO $ case v of
|
||||
Nothing -> go [passwordprompts 0] Nothing
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue