From 21b6b1d9a297f580978dd1b7b9a3468ac2cadc85 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 28 Apr 2015 00:22:20 +0200 Subject: [PATCH] org-src: Fix editing remotely empty footnote definitions * lisp/org-src.el (org-src--element-contents-area): (org-edit-footnote-reference): Take into consideration that :contents-begin and :contents-end may be nil. Reported-by: Rasmus --- lisp/org-src.el | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/lisp/org-src.el b/lisp/org-src.el index 5bfca5469..d85349149 100644 --- a/lisp/org-src.el +++ b/lisp/org-src.el @@ -274,10 +274,10 @@ positions." (let ((type (org-element-type element))) (cond ((eq type 'footnote-definition) - (cons (org-with-wide-buffer - (goto-char (org-element-property :post-affiliated element)) - (search-forward "]")) - (org-element-property :contents-end element))) + (let ((beg (org-with-wide-buffer + (goto-char (org-element-property :post-affiliated element)) + (search-forward "]")))) + (cons beg (or (org-element-property :contents-end element) beg)))) ((org-element-property :contents-begin element) (cons (org-element-property :contents-begin element) (org-element-property :contents-end element))) @@ -705,13 +705,14 @@ If BUFFER is non-nil, test it instead." 'read-only "Cannot edit footnote label" 'front-sticky t 'rear-nonsticky t) - (org-with-wide-buffer - (buffer-substring-no-properties - (progn - (goto-char (org-element-property :contents-begin definition)) - (skip-chars-backward " \r\t\n") - (point)) - (org-element-property :contents-end definition)))) + (and (org-element-property :contents-begin definition) + (org-with-wide-buffer + (buffer-substring-no-properties + (progn + (goto-char (org-element-property :contents-begin definition)) + (skip-chars-backward " \r\t\n") + (point)) + (org-element-property :contents-end definition))))) 'remote)) ;; Report success. t)) -- 2.11.4.GIT