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
|
@ -11,6 +11,7 @@ import Common.Annex
|
|||
import Command
|
||||
import qualified Command.Watch
|
||||
import Annex.Init
|
||||
import Annex.Path
|
||||
import Config.Files
|
||||
import qualified Build.SysConfig
|
||||
import Utility.HumanTime
|
||||
|
@ -69,7 +70,7 @@ autoStart startdelay = do
|
|||
when (null dirs) $ do
|
||||
f <- autoStartFile
|
||||
error $ "Nothing listed in " ++ f
|
||||
program <- readProgramFile
|
||||
program <- programPath
|
||||
haveionice <- pure Build.SysConfig.ionice <&&> inPath "ionice"
|
||||
forM_ dirs $ \d -> do
|
||||
putStrLn $ "git-annex autostart in " ++ d
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue