emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/ssh-deploy 0f5e1dc 108/173: Fixed bug with endless loop


From: Stefan Monnier
Subject: [elpa] externals/ssh-deploy 0f5e1dc 108/173: Fixed bug with endless loop
Date: Sat, 20 Oct 2018 10:36:39 -0400 (EDT)

branch: externals/ssh-deploy
commit 0f5e1dc3c9227e3c41a5b85a7e280ef6ed077cc8
Author: Christian Johansson <address@hidden>
Commit: Christian Johansson <address@hidden>

    Fixed bug with endless loop
---
 ssh-deploy-diff-mode.el | 30 +++++++++++++-----------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/ssh-deploy-diff-mode.el b/ssh-deploy-diff-mode.el
index 581cbb0..46130fa 100644
--- a/ssh-deploy-diff-mode.el
+++ b/ssh-deploy-diff-mode.el
@@ -3,8 +3,8 @@
 ;; Author: Christian Johansson <github.com/cjohansson>
 ;; Maintainer: Christian Johansson <github.com/cjohansson>
 ;; Created: 1 Feb 2018
-;; Modified: 16 Feb 2018
-;; Version: 1.1
+;; Modified: 18 Feb 2018
+;; Version: 1.11
 ;; Keywords: tools, convenience
 ;; URL: https://github.com/cjohansson/emacs-ssh-deploy
 
@@ -37,8 +37,6 @@
 
 ;; TODO: Must explicitly send global variables, seems like settings are lost 
sometimes?
 ;; TODO: Downloading and deletion of remote files that does not exist on local 
root does not work?
-;; TODO: Pressing return on a file in both roots should show some kind of 
message
-;; TODO: Pressing action at first line causing endless loop
 
 (defvar ssh-deploy-diff-mode nil)
 
@@ -107,7 +105,7 @@
           (let* ((start (+ 2 (line-beginning-position)))
                  (end (line-end-position)))
             (setq file (buffer-substring-no-properties start end))))
-      (while (and (> (line-number-at-pos) 0)
+      (while (and (> (line-number-at-pos) 1)
                   (not (looking-at "^[A-Z]+")))
         (forward-line -1))
       (if (looking-at "^[A-Z]")
@@ -122,8 +120,7 @@
                   ((string= section "FILES ONLY IN B") (setq section 
ssh-deploy-diff-mode--section-only-in-b))
                   ((string= section "FILES IN BOTH BUT DIFFERS") (setq section 
ssh-deploy-diff-mode--section-in-both))
                   (t (message "Could not find section %s" section)))
-
-            (while (and (> (line-number-at-pos) 0)
+            (while (and (> (line-number-at-pos) 1)
                         (not (looking-at "^DIRECTORY B:")))
               (forward-line -1))
             (if (looking-at "^DIRECTORY B:")
@@ -132,7 +129,7 @@
                        (directory-b (buffer-substring-no-properties start 
end)))
                   (setq directory-b (replace-regexp-in-string "DIRECTORY B: " 
"" directory-b))
 
-                  (while (and (> (line-number-at-pos) 0)
+                  (while (and (> (line-number-at-pos) 1)
                               (not (looking-at "^DIRECTORY A:")))
                     (forward-line -1))
                   (if (looking-at "^DIRECTORY A:")
@@ -147,15 +144,14 @@
   (interactive)
   (let ((parts (ssh-deploy-diff-mode--get-parts)))
     (if (not (eq parts nil))
-        (progn
-          (cond ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy)) (ssh-deploy-diff-mode--copy parts))
-                ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy-a)) (ssh-deploy-diff-mode--copy-a parts))
-                ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy-b)) (ssh-deploy-diff-mode--copy-b parts))
-                ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-delete)) (ssh-deploy-diff-mode--delete parts))
-                ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-difference)) (ssh-deploy-diff-mode--difference 
parts))
-                ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-open)) (ssh-deploy-diff-mode--open parts))
-                ((= action ssh-deploy-diff-mode--action-refresh) 
(ssh-deploy-diff-mode--refresh parts))
-                (t (message "Found nothing to do in the section for action %s" 
action))))
+        (cond ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy)) (ssh-deploy-diff-mode--copy parts))
+              ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy-a)) (ssh-deploy-diff-mode--copy-a parts))
+              ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-copy-b)) (ssh-deploy-diff-mode--copy-b parts))
+              ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-delete)) (ssh-deploy-diff-mode--delete parts))
+              ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-difference)) (ssh-deploy-diff-mode--difference 
parts))
+              ((and (not (null (nth 0 parts))) (= action 
ssh-deploy-diff-mode--action-open)) (ssh-deploy-diff-mode--open parts))
+              ((= action ssh-deploy-diff-mode--action-refresh) 
(ssh-deploy-diff-mode--refresh parts))
+              (t (message "Found nothing to do in the section for action %s" 
action)))
       (message "Found nothing to do"))))
 
 (defun ssh-deploy-diff-mode--refresh (parts)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]