NG> Thank you. It looks good.

    NG> Could you send it again with a proper commit message so I can apply it?

This work?

>From df299def392a93a2adf41ae3cd740b54382d64b0 Mon Sep 17 00:00:00 2001
From: Ian Dunn <du...@gnu.org>
Date: Sat, 6 Jan 2018 17:29:11 -0500
Subject: [PATCH] org-agenda: Fix lprops when recreating sticky agendas

* lisp/org-agenda.el (org-agenda-lprops): New variable.
  (org-agenda-local-vars): Add it.
  (org-agenda-prepare): Set lprops from symbol property.
  (org-agenda-redo): Get lprops from variable, not property.
---
 lisp/org-agenda.el | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index c67f6e024..bf406f193 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -2145,6 +2145,7 @@ When nil, `q' will kill the single agenda buffer."
 (defvar org-agenda-this-buffer-is-sticky nil)
 (defvar org-agenda-last-indirect-buffer nil
   "Last buffer loaded by `org-agenda-tree-to-indirect-buffer'.")
+(defvar org-agenda-lprops nil)
 
 (defconst org-agenda-local-vars
   '(org-agenda-this-buffer-name
@@ -2173,6 +2174,7 @@ When nil, `q' will kill the single agenda buffer."
     org-agenda-filtered-by-category
     org-agenda-filter-form
     org-agenda-cycle-counter
+    org-agenda-lprops
     org-agenda-last-prefix-arg)
   "Variables that must be local in agenda buffers to allow multiple buffers.")
 
@@ -3752,6 +3754,10 @@ FILTER-ALIST is an alist of filters we need to apply when
 	      (org-uniquify org-done-keywords-for-agenda))
 	(setq org-agenda-last-prefix-arg current-prefix-arg)
 	(setq org-agenda-this-buffer-name org-agenda-buffer-name)
+	;; Don't set these until we know we're in the agenda buffer,
+	;; and we know they're valid.
+	(setq org-agenda-lprops (or org-agenda-lprops
+				    (get 'org-agenda-redo-command 'org-lprops)))
 	(and name (not org-agenda-name)
 	     (setq-local org-agenda-name name)))
       (setq buffer-read-only nil))))
@@ -7315,7 +7321,7 @@ in the agenda."
 	 (cols org-agenda-columns-active)
 	 (line (org-current-line))
 	 (window-line (- line (org-current-line (window-start))))
-	 (lprops (get 'org-agenda-redo-command 'org-lprops))
+	 (lprops org-agenda-lprops)
 	 (redo-cmd (get-text-property p 'org-redo-cmd))
 	 (last-args (get-text-property p 'org-last-args))
 	 (org-agenda-overriding-cmd (get-text-property p 'org-series-cmd))
-- 
2.15.1

-- 
Ian Dunn

Reply via email to