--- Begin Message ---
Subject: |
24.3.90; cursor blinks faster and faster |
Date: |
Sat, 03 May 2014 03:44:18 +0200 |
Hello,
sometimes when I work with Emacs for a longer time, the cursor blinks
with a very high frequency. When I look at the value of
`timer-idle-list', I see multiple incarnations of blinking timers, like
here:
([t 0 0 125000 t show-paren-function nil idle 0]
[t 0 0 500000 0.5 blink-cursor-start nil idle 0]
[t 0 0 500000 0.5 blink-cursor-start nil idle 0]
[t 0 0 500000 t
#[0 "\205 \301 \207"
[eldoc-mode eldoc-print-current-symbol-info]
1 "\n\n(fn)"]
nil idle 0]
[t 0 0 500000 t jit-lock-context-fontify nil idle 0]
[t 0 0 500000 t which-func-update nil idle 0]
[t 0 0 500000 0.5 blink-cursor-start nil idle 0]
[t 0 0 500000 0.5 blink-cursor-start nil idle 0]
[t 0 0 500000 0.5 blink-cursor-start nil idle 0])
The only related settings in my .gnu-emacs are
(setq blink-cursor-blinks 0
blink-cursor-interval .15)
I grepped through all my Emacs related files, including installed
packages, and found no more matches for "blink-cursor".
I have no idea what actions trigger the bug.
Reading the sources in frame.el, I don't see how having multiple idle
blink timers can happen at all. Mysterious.
Hoping anybody has an idea or is seeing that too and can provide more
info.
Thanks,
Michael.
In GNU Emacs 24.3.90.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.12.0)
of 2014-04-30 on drachen
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description: Debian GNU/Linux testing (jessie)
Important settings:
value of $LC_ALL: de_DE.utf8
value of $LC_COLLATE: C
value of $LC_TIME: C
value of $LANG: de_DE.utf8
locale-coding-system: utf-8-unix
Major mode: Emacs-Lisp
Minor modes in effect:
magit-auto-revert-mode: t
rainbow-delimiters-mode: t
pretty-lambda-mode: t
paredit-mode: t
orglink-mode: t
on-screen-global-mode: t
ml-scale-mode: t
interaction-log-mode: t
highlight-defined-mode: t
helm-descbinds-mode: t
helm-mode: t
shell-dirtrack-mode: t
helm-occur-match-plugin-mode: t
helm-match-plugin-mode: t
global-diff-hl-mode: t
diff-hl-mode: t
diff-auto-refine-mode: t
recentf-mode: t
outline-minor-mode: t
eldoc-mode: t
which-function-mode: t
global-undo-tree-mode: t
undo-tree-mode: t
winner-mode: t
show-paren-mode: t
auto-image-file-mode: t
tooltip-mode: t
mouse-wheel-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
buffer-read-only: t
column-number-mode: t
line-number-mode: t
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#17392: 24.3.90; cursor blinks faster and faster |
Date: |
Sun, 18 May 2014 09:05:27 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) |
> sometimes when I work with Emacs for a longer time, the cursor blinks
> with a very high frequency. When I look at the value of
> `timer-idle-list', I see multiple incarnations of blinking timers, like
> here:
I think I fixed that one, now. Thanks you.
It was indeed linked to the "timer run is not in timer-idle-list"
situation, and it was indeed an instance of the scenario where an
earlier timer cancels a later timer.
The trick is that the earlier timer is "code that runs sit-for", since
it means that this earlier timer also runs all other timers (via
sit-for).
And removing the copy of the timer list does help, but doesn't solve the
problem: even if we don't copy the list, while running timer A, we'll
keep a pointer to the rest of the (uncopied) list; and this pointer may
point to a cons cell that gets removed from the list by cancel-timer.
Stefan
--- End Message ---