Stefan Kangas writes: > Michael Albinus writes: > >> Philip Kaludercic writes: >> >> Hi Philip, >> >>> The reason I was thinking about a more general solution, is that >>> something like >>> >>> (let ((default-directory "/this/does/not/exists")) >>> (make-process :command '("true"))) >>> >>> will always fail, even though "true" doesn't use the current working >>> directory. I think it would be useful to have some :fallback option for >>> these situations, to ensure that if `default-directory' doesn't exist, >>> any other directory should be used instead. >> >> This is a more general request than just make it work for "diff". >> >> Well, there is a reason that `default-directory' isn't set to something >> else behind your back, if it doesn't exist. Processes can use relative >> file names as arguments, and it is always better to fail with an error >> message instead of doing something unexpected you even don't know about. > > I tend to agree with Michael that we shouldn't make our fundamentals to > DWIMy. > > But this bug fix is clearly useful, though I'd also agree that we might > as well use a temporary directory for this instead. I'd also set the > file mode to 600 so that we don't inadvertently leak user data to random > places on the file system. Temporary directories are 700 by default anyway, so I don't think we need any additional provisions (especially seeing as if I am not mistaken, diffing doesn't create any files), which would just bloat up the patch. > Philip, could you update your patch along these lines and install? Sure, hope this is OK? If so, I'll push it: