bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#24415: 24.4; issue with big file variable


From: Stephen Berman
Subject: bug#24415: 24.4; issue with big file variable
Date: Mon, 12 Sep 2016 10:45:46 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

On Sun, 11 Sep 2016 23:52:56 +0200 Andrea Rossetti <andrea.rossetti@gmail.com> 
wrote:

> Hi guys,
>
>   if a file variable is a list longer than a certain size, then it's
> ignored on file loading. Test case follows:
>
> - start "emacs -Q"
> - M-: (add-file-local-variable 'v1 (make-list 2000 1)) RET
> - C-x C-w example01.el RET
> - close Emacs and restart "emacs -Q"
> - C-x C-f example01.el RET
> - bad behaviour: at this point a confirm message to load the file
>   variable should have appeared ("... safe variables blah blah... do you
>   want to apply it? y/n/!")  but it does not, and the variable is not
>   initialized
>
> Further observations:
>
>   - if you replay this same test with a shorter v1, for example lowering
>     "2000" to "1000", then the behaviour will be fine: the confirm
>     message will appear and inspection of the variable will show correct
>     value.
>
>   - it doesn't seem to depend on the max length of a single text line:
>     you get the error even when you re-run a similar test that saves two
>     file-local variables v1 and v2, each being "(make-list 1000 1)".
>
>   Does the test reproduce in the same way on your workstation? Do you
> think it's a bug, or am I just hitting some well-known hard limit?

It's a hard limit in hack-local-variables:

        ;; Look for "Local variables:" line in last page.
        (save-excursion
          (goto-char (point-max))
          (search-backward "\n\^L" (max (- (point-max) 3000) (point-min))
                           'move)

I don't know how well-known this is; AFAICT it's not documented.

Steve Berman





reply via email to

[Prev in Thread] Current Thread [Next in Thread]