GNU bug report logs - #16265
24.3.50; re-search-forward (error "Invalid search bound (wrong side of point)")

Previous Next

Package: emacs;

Reported by: Keith David Bershatsky <esq <at> lawlist.com>

Date: Fri, 27 Dec 2013 05:58:02 UTC

Severity: normal

Merged with 16326

Found in version 24.3.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Keith David Bershatsky <esq <at> lawlist.com>
To: Nicolas Richard <theonewiththeevillook <at> yahoo.fr>
Cc: 16265 <at> debbugs.gnu.org
Subject: bug#16265: 24.3.50; re-search-forward (error "Invalid search bound (wrong side of point)")
Date: Sat, 28 Dec 2013 00:00:36 -0800
Nicolas:

I'm still working on narrowing down the issue.  A likely suspect is a failed `org-sort-entries` before running the *second* round of org-capture.  The `org-sort-entries` kicks in `recursive-edit`, which does not go back to the top level after an error.  re-search-forward and re-search-backward apparently throw errors when the org buffer is in `recursive-edit`.  Last night I had to create a work-around to search the org buffer to update my calendar while org-capture was in use because I couldn't search the buffer either.  So it may not be only recursive edit that causes re-search-forward / backward to throw errors -- it may be linked to whatever org-capture is doing to the main org file buffer -- e.g., narrowing.  The org-sort-entries worked fine in the Emacs Trunk version from October 5, 2013, but not the recent version of Emacs Trunk built a few days ago.

Keith


		Debugger entered--Lisp error: (error "Nothing to sort")
  signal(error ("Nothing to sort"))
  error("Nothing to sort")
  (if (>= beg end) (error "Nothing to sort"))
  (let ((case-func (if with-case (quote identity) (quote downcase))) (cmstr (if (equal (marker-buffer org-clock-marker) (current-buffer)) (progn (save-excursion (goto-char org-clock-marker) (looking-back "^.*") (match-string-no-properties 0))))) start beg end stars re re2 txt what tmp) (cond ((org-region-active-p) (setq end (region-end) what "region") (goto-char (region-beginning)) (if (not (org-at-heading-p)) (outline-next-heading)) (setq start (point))) ((or (org-at-heading-p) (condition-case nil (progn (org-back-to-heading t) t) (error nil))) (org-back-to-heading t) (setq start (point) end (progn (org-end-of-subtree t t) (or (bolp) (insert "\n")) (org-back-over-empty-lines) (point)) what "children") (goto-char start) (show-subtree) (outline-next-heading)) (t (goto-char (point-min)) (or (org-at-heading-p) (outline-next-heading)) (setq start (point)) (goto-char (point-max)) (beginning-of-line 1) (if (looking-at ".*?\\S-") (progn (end-of-line 1) (insert "\n"))) (setq end (point-max)) (setq what "top-level") (goto-char start) (show-all))) (setq beg (point)) (if (>= beg end) (error "Nothing to sort")) (looking-at "\\(\\*+\\)") (setq stars (match-string 1) re (concat "^" (regexp-quote stars) " +") re2 (concat "^" (regexp-quote (substring stars 0 -1)) "[ 	\n]") txt (buffer-substring beg end)) (if (not (equal (substring txt -1) "\n")) (setq txt (concat txt "\n"))) (if (and (not (equal stars "*")) (string-match re2 txt)) (error "Region to sort contains a level above the first entry")) (if sorting-type nil (message "Sort %s: [a]lpha  [n]umeric  [p]riority  p[r]operty  todo[o]rder  [f]unc\n               [t]ime [s]cheduled  [d]eadline  [c]reated\n               A/N/P/R/O/F/T/S/D/C means reversed:" what) (setq sorting-type (read-char-exclusive)) (and (= (downcase sorting-type) 102) (setq getkey-func (org-icompleting-read "Sort using function: " obarray (quote fboundp) t nil nil)) (setq getkey-func (intern getkey-func))) (and (= (downcase sorting-type) 114) (setq property (org-icompleting-read "Property: " (mapcar (quote list) (org-buffer-property-keys t)) nil t)))) (save-restriction (narrow-to-region start end) (let ((dcst (downcase sorting-type)) (case-fold-search nil) (now (current-time))) (sort-subr (/= dcst sorting-type) (function (lambda nil (if (re-search-forward re nil t) (goto-char ...) (goto-char ...)))) (function (lambda nil (let (...) (unwind-protect ... ...)))) (function (lambda nil (cond (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (t ...)))) nil (cond ((= dcst 97) (quote string<)) ((= dcst 102) compare-func) ((member dcst (quote ...)) (quote <)))))) (run-hooks (quote org-after-sorting-entries-or-items-hook)) (if cmstr (progn (save-excursion (goto-char start) (search-forward cmstr nil t) (move-marker org-clock-marker (point))))))
  org-sort-entries(t 97)
  (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116))
  (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter))
  (progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter)))
  (if (not (get-buffer-window "*Org Agenda*" (selected-frame))) (progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter))))
  (let* (beg end (lawlist-item-new (lawlist-org-get-heading)) (month-regexp "January\\|February\\|March\\|April\\|May\\|June\\|July\\|August\\|September\\|October\\|November\\|December")) (org-capture-finalize) (if (get-buffer-window "*Org Agenda*" (selected-frame)) (progn (set-buffer "*Org Agenda*") (goto-char (point-min)) (cond ((save-excursion (re-search-forward "tags:  " nil t)) (re-search-forward "tags:  " nil t) (let ((tag-beg ...)) (end-of-line) (let* (tag-match ...) (setq tag-match ...) (switch-to-buffer ...) (let ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (tag nil tag-match) (if ... ...)))) ((save-excursion (re-search-forward month-regexp nil t)) (let ((date-beg ...)) (end-of-line) (let* (date-match ...) (setq date-match ...) (let* ... ... ... ... ... ... ...))))))) (if (not (get-buffer-window "*Org Agenda*" (selected-frame))) (progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter)))))
  lawlist-org-capture-finalize()
  call-interactively(lawlist-org-capture-finalize nil nil)
  command-execute(lawlist-org-capture-finalize)




This bug report was last modified 11 years and 199 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.