]> git.eshelyaron.com Git - emacs.git/commitdiff
Ensure local `default-directory' in Tramp when needed
authorMichael Albinus <michael.albinus@gmx.de>
Fri, 8 Apr 2022 11:12:03 +0000 (13:12 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Fri, 8 Apr 2022 11:12:03 +0000 (13:12 +0200)
* lisp/net/tramp.el (tramp-process-running-p): Ensure local
`default-directory' when calling `list-system-processes' and
`process-attributes'.

lisp/net/tramp.el

index a24d83f876aeb7ee5adc61b4180e7844c817418a..8baf72464dc706cd2d618e9dc823f7edd3235338 100644 (file)
@@ -5666,14 +5666,15 @@ verbosity of 6."
   "Return t if system process PROCESS-NAME is running for `user-login-name'."
   (when (stringp process-name)
     (catch 'result
-      (dolist (pid (list-system-processes))
-       (when-let ((attributes (process-attributes pid))
-                  (comm (cdr (assoc 'comm attributes))))
-         (and (string-equal (cdr (assoc 'user attributes)) (user-login-name))
-               ;; The returned command name could be truncated to 15
-               ;; characters.  Therefore, we cannot check for `string-equal'.
-              (string-prefix-p comm process-name)
-              (throw 'result t)))))))
+      (let ((default-directory temporary-file-directory))
+       (dolist (pid (list-system-processes))
+         (when-let ((attributes (process-attributes pid))
+                    (comm (cdr (assoc 'comm attributes))))
+           (and (string-equal (cdr (assoc 'user attributes)) (user-login-name))
+                ;; The returned command name could be truncated to 15
+                ;; characters.  Therefore, we cannot check for `string-equal'.
+                (string-prefix-p comm process-name)
+                (throw 'result t))))))))
 
 ;; When calling "emacs -Q", `auth-source-search' won't be called.  If
 ;; you want to debug exactly this case, call "emacs -Q --eval '(setq