]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/net/tramp-compat.el (tramp-compat-flatten-list): New defun.
authorMichael Albinus <michael.albinus@gmx.de>
Mon, 10 Dec 2018 15:52:21 +0000 (16:52 +0100)
committerMichael Albinus <michael.albinus@gmx.de>
Mon, 10 Dec 2018 15:52:21 +0000 (16:52 +0100)
lisp/net/tramp-compat.el

index 01377240ad54f6f8765d1427756fc89b893cce3d..046966e01900a91e885563d8bf5f5ba7c4ed9559 100644 (file)
@@ -270,6 +270,19 @@ A nil value for either argument stands for the current time."
            (unload-feature 'tramp-loaddefs 'force)
            (unload-feature 'tramp-compat 'force)))
 
+;; There does not exist a common `flatten-list' yet, this is discussed
+;; in Bug#33309.  For the time being we implement our own version,
+;; derived from `eshell-flatten-list'.
+(defun tramp-compat-flatten-list (args)
+  "Flatten any lists within ARGS, so that there are no sublists."
+  (let ((new-list (list t)))
+    (dolist (a args)
+      (if (and (listp a)
+              (listp (cdr a)))
+         (nconc new-list (tramp-compat-flatten-list a))
+       (nconc new-list (list a))))
+    (cdr new-list)))
+
 (provide 'tramp-compat)
 
 ;;; TODO: