emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Adam Porter <adam@alphapapa.net>
To: emacs-orgmode@gnu.org
Subject: [BUG] When calling org-tree-to-indirect-buffer: (wrong-type-argument listp org-fold-outline) in org-fold-core-get-folding-spec-from-alias [9.6.6 (release_9.6.6 @ /gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/org/)]
Date: Thu, 24 Aug 2023 11:50:32 -0500	[thread overview]
Message-ID: <a63c3dd8-abbf-8969-2305-4b8331e0de6f@alphapapa.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 721 bytes --]

Hi,

Since upgrading to Emacs 29.1 and Org 9.6.6, I am getting an error when
opening a bookmark to an Org subtree buffer created with burly.el.  When
opening the bookmark, burly calls org-tree-to-indirect-buffer to make a
new indirect buffer showing the subtree in question.  This worked fine
in Emacs 28 and the previous Org version I was using, 9.5.something,
IIRC.  Now I get this error (please see the attached backtrace, which is 
abbreviated, and some functions were re-evaluated so as to be interpreted).

FWIW, I also tried setting org-fold-core-style to overlays and
restarting Emacs, but the error still happens, although with a different
symbol in place of org-fold-outline.

Thanks for your work on Org.

Adam

[-- Attachment #2: backtrace.txt --]
[-- Type: text/plain, Size: 8196 bytes --]

Debugger entered--Lisp error: (wrong-type-argument listp org-fold-outline)
  car(org-fold-outline)
  alist-get(org-fold-outline ((:alias . org-link) (org-link . org-link) (:alias . org-link-description) (org-link-description . org-link-description) (property-drawer . org-fold-drawer) (drawer . org-fold-drawer) (:alias . org-fold-drawer) (org-fold-drawer . org-fold-drawer) (verse-block . org-fold-block) (src-block . org-fold-block) (special-block . org-fold-block) (quote-block . org-fold-block) (export-block . org-fold-block) (example-block . org-fold-block) (dynamic-block . org-fold-block) (comment-block . org-fold-block) (center-block . org-fold-block) (block . org-fold-block) (:alias . org-fold-block) (org-fold-block . org-fold-block) (plain-list . org-fold-outline) (inlinetask . org-fold-outline) (outline . org-fold-outline) (heading . org-fold-outline) (headline . org-fold-outline) (:alias . org-fold-outline) (org-fold-outline . org-fold-outline)))
  org-fold-core-get-folding-spec-from-alias(org-fold-outline)
  org-fold-core--property-symbol-get-create(org-fold-outline)
  org-fold-core-decouple-indirect-buffer-folds()
  org-get-indirect-buffer(#<buffer USHIN.org> #("Meetings / Sessions" 0 19 (fontified nil line-prefix "" wrap-prefix #("* " 0 2 (face org-indent)))))
  #<subr org-tree-to-indirect-buffer>()
  apply(#<subr org-tree-to-indirect-buffer> nil)
  org-tree-to-indirect-buffer()
  (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn (org-narrow-to-subtree) (goto-char (org-find-olp (read point-olp) 'this-buffer)))))
  (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char (string-to-number pos))) (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn (org-narrow-to-subtree) (goto-char (org-find-olp (read point-olp) 'this-buffer))))) (if (and heading-pos relative-pos) (progn (forward-char (string-to-number relative-pos)))) (current-buffer))
  (let* ((heading-pos (if top-olp (progn (org-find-olp (read top-olp) 'this-buffer))))) (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char (string-to-number pos))) (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn (org-narrow-to-subtree) (goto-char (org-find-olp (read point-olp) 'this-buffer))))) (if (and heading-pos relative-pos) (progn (forward-char (string-to-number relative-pos)))) (current-buffer)))
  (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* ((heading-pos (if top-olp (progn (org-find-olp (read top-olp) 'this-buffer))))) (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char (string-to-number pos))) (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn (org-narrow-to-subtree) (goto-char (org-find-olp ... ...))))) (if (and heading-pos relative-pos) (progn (forward-char (string-to-number relative-pos)))) (current-buffer))))
  (let* ((x2699 (map-elt query "pos")) (x2700 (map-elt query "indirect")) (x2701 (map-elt query "narrowed")) (x2702 (map-elt query "top-olp")) (x2703 (map-elt query "point-olp")) (x2704 (map-elt query "relative-pos"))) (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* ((heading-pos (if top-olp (progn (org-find-olp ... ...))))) (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char (string-to-number pos))) (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn (org-narrow-to-subtree) (goto-char ...)))) (if (and heading-pos relative-pos) (progn (forward-char (string-to-number relative-pos)))) (current-buffer)))))
  (progn (ignore (mapp query)) (let* ((x2699 (map-elt query "pos")) (x2700 (map-elt query "indirect")) (x2701 (map-elt query "narrowed")) (x2702 (map-elt query "top-olp")) (x2703 (map-elt query "point-olp")) (x2704 (map-elt query "relative-pos"))) (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* ((heading-pos (if top-olp (progn ...)))) (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char (string-to-number pos))) (cond (indirect (org-tree-to-indirect-buffer)) (narrowed (progn ... ...))) (if (and heading-pos relative-pos) (progn (forward-char ...))) (current-buffer))))))
  (progn (fset 'alist-get vnew) (progn (ignore (mapp query)) (let* ((x2699 (map-elt query "pos")) (x2700 (map-elt query "indirect")) (x2701 (map-elt query "narrowed")) (x2702 (map-elt query "top-olp")) (x2703 (map-elt query "point-olp")) (x2704 (map-elt query "relative-pos"))) (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* ((heading-pos (if top-olp ...))) (progn (widen) (if heading-pos (goto-char heading-pos) (goto-char ...)) (cond (indirect ...) (narrowed ...)) (if (and heading-pos relative-pos) (progn ...)) (current-buffer)))))))
  (unwind-protect (progn (fset 'alist-get vnew) (progn (ignore (mapp query)) (let* ((x2699 (map-elt query "pos")) (x2700 (map-elt query "indirect")) (x2701 (map-elt query "narrowed")) (x2702 (map-elt query "top-olp")) (x2703 (map-elt query "point-olp")) (x2704 (map-elt query "relative-pos"))) (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* ((heading-pos ...)) (progn (widen) (if heading-pos ... ...) (cond ... ...) (if ... ...) (current-buffer))))))) (fset 'alist-get old))
  (let* ((vnew #'(lambda (key alist &optional _default _remove _testfn) (car (cdr (assoc-string key alist))))) (old (symbol-function 'alist-get))) (unwind-protect (progn (fset 'alist-get vnew) (progn (ignore (mapp query)) (let* ((x2699 (map-elt query "pos")) (x2700 (map-elt query "indirect")) (x2701 (map-elt query "narrowed")) (x2702 (map-elt query "top-olp")) (x2703 (map-elt query "point-olp")) (x2704 (map-elt query "relative-pos"))) (let ((pos x2699) (indirect x2700) (narrowed x2701) (top-olp x2702) (point-olp x2703) (relative-pos x2704)) (let* (...) (progn ... ... ... ... ...)))))) (fset 'alist-get old)))
  (save-current-buffer (set-buffer buffer) (let* ((vnew #'(lambda (key alist &optional _default _remove _testfn) (car (cdr ...)))) (old (symbol-function 'alist-get))) (unwind-protect (progn (fset 'alist-get vnew) (progn (ignore (mapp query)) (let* ((x2699 ...) (x2700 ...) (x2701 ...) (x2702 ...) (x2703 ...) (x2704 ...)) (let (... ... ... ... ... ...) (let* ... ...))))) (fset 'alist-get old))))
  (progn (let ((--cl-keys-- --cl-rest--)) (while --cl-keys-- (cond ((memq (car --cl-keys--) '(:buffer :query :allow-other-keys)) (if (cdr --cl-keys--) nil (error "Missing argument for %s" (car --cl-keys--))) (setq --cl-keys-- (cdr (cdr --cl-keys--)))) ((car (cdr (memq ... --cl-rest--))) (setq --cl-keys-- nil)) (t (error "Keyword argument %s not one of (:buffer :query)" (car --cl-keys--)))))) (save-current-buffer (set-buffer buffer) (let* ((vnew #'(lambda (key alist &optional _default _remove _testfn) (car ...))) (old (symbol-function 'alist-get))) (unwind-protect (progn (fset 'alist-get vnew) (progn (ignore (mapp query)) (let* (... ... ... ... ... ...) (let ... ...)))) (fset 'alist-get old)))))
  (let* ((buffer (car (cdr (plist-member --cl-rest-- ':buffer)))) (query (car (cdr (plist-member --cl-rest-- ':query))))) (progn (let ((--cl-keys-- --cl-rest--)) (while --cl-keys-- (cond ((memq (car --cl-keys--) '...) (if (cdr --cl-keys--) nil (error "Missing argument for %s" ...)) (setq --cl-keys-- (cdr ...))) ((car (cdr ...)) (setq --cl-keys-- nil)) (t (error "Keyword argument %s not one of (:buffer :query)" (car --cl-keys--)))))) (save-current-buffer (set-buffer buffer) (let* ((vnew #'(lambda ... ...)) (old (symbol-function 'alist-get))) (unwind-protect (progn (fset 'alist-get vnew) (progn (ignore ...) (let* ... ...))) (fset 'alist-get old))))))
  burly-follow-url-org-mode(:buffer #<buffer USHIN.org> :query (("narrowed" "t") ("indirect" "t") ("relative-pos" "0") ("point-olp" "(\"Meetings / Sessions\")") ("top-olp" "(\"Meetings / Sessions\")") ("pos" "35523")))
  funcall(burly-follow-url-org-mode :buffer #<buffer USHIN.org> :query (("narrowed" "t") ("indirect" "t") ("relative-pos" "0") ("point-olp" "(\"Meetings / Sessions\")") ("top-olp" "(\"Meetings / Sessions\")") ("pos" "35523")))

             reply	other threads:[~2023-08-24 16:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-24 16:50 Adam Porter [this message]
2023-08-25  8:19 ` [BUG] When calling org-tree-to-indirect-buffer: (wrong-type-argument listp org-fold-outline) in org-fold-core-get-folding-spec-from-alias [9.6.6 (release_9.6.6 @ /gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/org/)] Ihor Radchenko
2023-08-28  6:35   ` Adam Porter
2023-08-28  9:24     ` Ihor Radchenko
2023-08-31  4:22       ` Adam Porter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a63c3dd8-abbf-8969-2305-4b8331e0de6f@alphapapa.net \
    --to=adam@alphapapa.net \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).