[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Stackoverflow in regexp matcher
From: |
Loris Bennett |
Subject: |
Re: [O] Stackoverflow in regexp matcher |
Date: |
Thu, 04 Feb 2016 08:30:01 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
Alan Schmitt <address@hidden> writes:
> On 2016-02-03 12:34, "Loris Bennett" <address@hidden> writes:
>
>> Nicolas Goaziou <address@hidden> writes:
>>
>>> Hello,
>>>
>>> "Loris Bennett" <address@hidden> writes:
>>>
>>>> re-search-forward("^[^%]*\\\\usepackage.*{biblatex}" nil t)
>>>
>>> This is a pathological regexp. [^%] is anything but a percent sign, so
>>> it can contain newline characters. Basically [^%]* can match an entire
>>> buffer if it doesn't contain any %.
>>>
>>> I think the regexp used in `reftex-using-biblatex-p' should be
>>>
>>> "^[^%\n]*\\\\usepackage.*{biblatex}"
>>>
>>>
>>> Regards,
>>
>> So should this be filed as a bug against Emacs?
>>
>> In the meantime, aside from patching my own Emacs, would there be any
>> other workaround, particularly considering that I don't currently need
>> any biblatex functionality.
>
> This is a known bug:
> http://comments.gmane.org/gmane.emacs.auctex.devel/3692
>
> This thread also suggests a fix:
>
> #+begin_src emacs-lisp
> (with-eval-after-load 'reftex-parse
> (defun reftex-using-biblatex-p ()
> "Return non-nil if we are using biblatex rather than bibtex."
> (if (boundp 'TeX-active-styles)
> ;; the sophisticated AUCTeX way
> (member "biblatex" TeX-active-styles)
> ;; poor-man's check...
> (save-excursion
> (re-search-forward "^[^%\n]*?\\\\usepackage.*{biblatex}" nil t)))))
> #+end_src
>
> Best,
>
> Alan
Thanks for the fix.
Cheers,
Loris
--
This signature is currently under construction.