From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eli Zaretskii Subject: bug#23917: 25.0.95; commit 3a9d6296b35e5317c497674d5725eb52699bd3b8 causing org-capture to error out Date: Fri, 08 Jul 2016 20:03:35 +0300 Message-ID: <83a8hshxjs.fsf__29589.9921599359$1467997509$gmane$org@gnu.org> References: <8760sgnvxh.fsf@gmail.com> <83lh1ci5x5.fsf@gnu.org> <87poqo6sud.fsf@gmail.com> Reply-To: Eli Zaretskii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35960) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bLZCF-0006jz-8L for emacs-orgmode@gnu.org; Fri, 08 Jul 2016 13:04:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bLZCC-0005Jf-Uy for emacs-orgmode@gnu.org; Fri, 08 Jul 2016 13:04:10 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-reply-to: <87poqo6sud.fsf@gmail.com> (message from Robert Pluim on Fri, 08 Jul 2016 17:40:42 +0200) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: Robert Pluim Cc: 23917@debbugs.gnu.org > From: Robert Pluim > Cc: 23917@debbugs.gnu.org > Date: Fri, 08 Jul 2016 17:40:42 +0200 > > org-element--cache-after-change is: > > (defun org-element--cache-after-change (beg end pre) > "Update buffer modifications for current buffer. > BEG and END are the beginning and end of the range of changed > text, and the length in bytes of the pre-change text replaced by > that range. See `after-change-functions' for more information." > (when (org-element--cache-active-p) > (org-with-wide-buffer > (goto-char beg) > (beginning-of-line) > (save-match-data > (let ((top (point)) > (bottom (save-excursion (goto-char end) (line-end-position)))) > ;; Determine if modified area needs to be extended, according > ;; to both previous and current state. We make a special > ;; case for headline editing: if a headline is modified but > ;; not removed, do not extend. > (when (case org-element--cache-change-warning > ((t) t) > (headline > (not (and (org-with-limited-levels (org-at-heading-p)) > (= (line-end-position) bottom)))) > (otherwise > (let ((case-fold-search t)) > (re-search-forward > org-element--cache-sensitive-re bottom t)))) > ;; Effectively extend modified area. > (org-with-limited-levels > (setq top (progn (goto-char top) > (when (outline-previous-heading) (forward-line)) > (point))) > (setq bottom (progn (goto-char bottom) > (if (outline-next-heading) (1- (point)) > (point)))))) > ;; Store synchronization request. > (let ((offset (- end beg pre))) > (org-element--cache-submit-request top (- bottom offset) offset))))) > ;; Activate a timer to process the request during idle time. > (org-element--cache-set-timer (current-buffer)))) > > which already does save-match-data. If I globally disable the org > element cache by (setq org-element-use-cache nil) the issue > disappears, so now I'm confused as to what's going on. Load the file where this function lives as a .el file, and when the watchpoint triggers, show the results of "xbacktrace".