In some cases, `org-agenda-buffer` is killed while the symbol itself
is still non-nil. `org-agena-new-marker` and anything calls it would
ends in a message of "Selecting deleted buffer".

This commit simply added an additional test that

    (buffer-live-p org-agenda-buffer)

should also be true.

Signed-off-by: Lucius Hu <lebensterben@users.noreply.github.com>
---
 lisp/org-agenda.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 9bc44a56e..d5969ac78 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -4225,7 +4225,7 @@ Marker is at point, or at POS if non-nil.  Org mode keeps a list
 of these markers and resets them when they are no longer in use."
   (let ((m (copy-marker (or pos (point)) t)))
     (setq org-agenda-last-marker-time (float-time))
-    (if org-agenda-buffer
+    (if (org-agenda-buffer (buffer-live-p org-agenda-buffer))
  (with-current-buffer org-agenda-buffer
   (push m org-agenda-markers))
       (push m org-agenda-markers))
--
2.35.1