Subject: Re: bug#70914: 29.3; Crashes often on Windows

From: Simen Endsjø <[email-masked]>
Date: Thu, 23 May 2024 12:05:29 +0200

> OK, thanks, I think we are close.  If I visit an Org file with one of
> the above in "emacs -Q", what should I type to get the crash?  I
> presume some optional features need to be turned on, because if I just
> visit such a file in "emacs -Q", I don't see any crashes and don't see
> "//" passed to the parse_root function.

That is the question. I need to use my configuration and org-fancy-priorities
(and maybe org-superstar) under gdb to reliably trigger the problem. If any of
these conditions isn't met, I'm not able to reproduce it.

But as I'm getting crashes at odd times even if I don't get errors visiting this
file, it might mean there is something else going on too. And maybe there is
some strange timing issue (as org-superstar documents too).

On Thu, May 23, 2024 at 10:18 AM Eli Zaretskii <[email-masked]> wrote:
>
> > From: Simen Endsjø <[email-masked]>
> > Date: Thu, 23 May 2024 09:31:22 +0200
> > Cc: Ihor Radchenko <[email-masked]>, [email-masked], [email-masked],
> >       [email-masked]
> >
> > I managed to narrow it down further. Org incorrectly finds file:// links. I have
> > some string concatenation in an emacs-lisp source block line `(concat "file://"
> > "foo")`, and this breaks org.
> >
> > I used the following function to extract all links, added them to a separate
> > org file and went through them.
> >
> >     (defun emacs-bug-70914/print-org-links ()
> >       (interactive)
> >       (save-excursion
> >         (beginning-of-buffer)
> >         (while (re-search-forward org-link-any-re nil t)
> >           (message "link: %s" (match-string 0)))))
> >
> > The following crashes
> >     #+begin_src emacs-lisp
> >     "file://"
> >     #+end_src
> >
> > Other combinations also crashes
> >     #+begin_src emacs-lisp
> >     (message "src=\"file://")
> >     #+end_src
> >
> >     #+begin_src emacs-lisp
> >     "src=\"file://"
> >     #+end_src
>
> OK, thanks, I think we are close.  If I visit an Org file with one of
> the above in "emacs -Q", what should I type to get the crash?  I
> presume some optional features need to be turned on, because if I just
> visit such a file in "emacs -Q", I don't see any crashes and don't see
> "//" passed to the parse_root function.
>
> Ihor, can you point me to the code which processes these file:// links
> and as result calls file-exists-p on "//"?