* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
@ 2016-10-07 4:59 Georges Ko
2016-10-07 7:16 ` Nikolay Kudryavtsev
2016-10-07 8:05 ` Eli Zaretskii
0 siblings, 2 replies; 13+ messages in thread
From: Georges Ko @ 2016-10-07 4:59 UTC (permalink / raw)
To: 24634
When moving in lines with characters such as WAVY LOW LINE or WAVY LINE:
- Emacs freezes for a while (noticeable) for a fraction of a second or
even longer,
- The CPU load of Emacs increases as well (up to 25% on my Windows 7
machine) in the meantime.
Text sample below:
﹏
⌇
This happens to the "native" as well as the Cygwin-compiled (--with-w32)
versions, but not with the gtk3 version (--with-x-toolkit=gtk3).
--
Georges Ko gko@gko.net 2016-10-07
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-07 4:59 bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters Georges Ko
@ 2016-10-07 7:16 ` Nikolay Kudryavtsev
2016-10-07 8:05 ` Eli Zaretskii
1 sibling, 0 replies; 13+ messages in thread
From: Nikolay Kudryavtsev @ 2016-10-07 7:16 UTC (permalink / raw)
To: gko; +Cc: 24634
This is a duplicate of #15876, I recently reported this as #24565, see
the discussion there for a workaround and perspectives for a more
permanent fix.
--
Best Regards,
Nikolay Kudryavtsev
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-07 4:59 bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters Georges Ko
2016-10-07 7:16 ` Nikolay Kudryavtsev
@ 2016-10-07 8:05 ` Eli Zaretskii
2016-10-07 17:01 ` Georges Ko
1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-10-07 8:05 UTC (permalink / raw)
To: Georges Ko; +Cc: 24634
> From: Georges Ko <gko@gko.net>
> Date: Fri, 07 Oct 2016 12:59:14 +0800
>
> When moving in lines with characters such as WAVY LOW LINE or WAVY LINE:
>
> - Emacs freezes for a while (noticeable) for a fraction of a second or
> even longer,
>
> - The CPU load of Emacs increases as well (up to 25% on my Windows 7
> machine) in the meantime.
Possibly related to bug#24565.
> Text sample below:
>
>
> ﹏
>
>
>
> ⌇
What font(s) is/are used on your system to display these characters?
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-07 8:05 ` Eli Zaretskii
@ 2016-10-07 17:01 ` Georges Ko
2016-10-07 19:03 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Georges Ko @ 2016-10-07 17:01 UTC (permalink / raw)
To: 24634
Eli Zaretskii <eliz@gnu.org> writes:
>> ﹏
>>
>>
>>
>> ⌇
>
> What font(s) is/are used on your system to display these characters?
I did some tests with "runemacs -Q", with the following results as an
org-mode buffer.
I can mitigate the problem by using language environment "English" and
font "MingLiu-SIZE" (2nd step), the worst case being language
environment "UTF-8" and font "Courier NEw-SIZE" (3rd step).
* Summary
|---------+----------+-------+------+------+---------------------------------------------------------|
| Step | current- | frame | WAVY | WAVY | Font of set-frame-font, WAVY LINE and WAVY LOW LINE |
| | language | font | LINE | LOW | O=outline NNN=normal-normal-normal |
| | environ | | | LINE | |
|---------+----------+-------+------+------+---------------------------------------------------------|
| Initial | English | CN-10 | | | -O-Courier New-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x1E) |
| | | | OK | | -O-Symbola-NNN-serif-13-*-*-*-p-*-iso8859-1 (#x640) |
| | | | | NOK | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso10646-1 (#x7096) |
|---------+----------+-------+------+------+---------------------------------------------------------|
| (s-f-f | English | ML-10 | | | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x29) |
| ML-10) | | | OK | | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x286) |
| | | | | OK | -O-MingLiU-NNN-mono-13-*-*-*-c-*-gb2312.1980-0 (#x7096) |
|---------+----------+-------+------+------+---------------------------------------------------------|
| s-l-e | UTF-8 | ML-10 | | | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x55) |
| UTF-8 | | | OK | | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x286) |
| | | | | NOK | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso10646-1 (#x7096) |
|---------+----------+-------+------+------+---------------------------------------------------------|
| (s-f-f | UTF-8 | CN-10 | | | -O-Courier New-NNN-mono-13-*-*-*-c-*-iso8859-1 (#x03) |
| CN-10) | | | NOK | | -O-Symbola-NNN-serif-13-*-*-*-p-*-iso8859-1 (#x640) |
| | | | | NOK | -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso10646-1 (#x7096) |
|---------+----------+-------+------+------+---------------------------------------------------------|
- WAVY LINE : script: symbol, category: .:Base
- WAVY LOW LINE: script: han, category: .:Base, c:Chinese
* Details
** Environment
- C:\emacs-25.1-x86_64-w64-mingw32\bin\runemacs.exe -Q
- current-language-environment -> "English"
- w32-ansi-code-page -> 1252
- Character info (C-u C-x =) of some ASCII character in *scratch*:
#+BEGIN_SRC fundamental
position: 1 of 145 (0%), column: 0
character: ; (displayed as ;) (codepoint 59, #o73, #x3b)
preferred charset: ascii (ASCII (ISO646 IRV))
code point in charset: 0x3B
script: latin
syntax: < which means: comment
category: .:Base, a:ASCII, l:Latin, r:Roman
to input: type "C-x 8 RET 3b" or "C-x 8 RET SEMICOLON"
buffer code: #x3B
file code: #x3B (encoded by coding system iso-latin-1-dos)
display: by this font (glyph code)
uniscribe:-outline-Courier New-normal-normal-normal-mono-13-*-*-*-c-*-iso8859-1 (#x1E)
Character code properties: customize what to show
name: SEMICOLON
general-category: Po (Punctuation, Other)
decomposition: (59) (';')
There are text properties here:
face font-lock-comment-delimiter-face
fontified nil
#+END_SRC
** Initial setup
- Insert "WAVY LINE": (insert-char 8967 1 t)
- OK: no high CPU load
- Character info of wavy line:
#+BEGIN_SRC fundamental
position: 184 of 189 (97%), column: 0
character: ⌇ (displayed as ⌇) (codepoint 8967, #o21407, #x2307)
preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0x2307
script: symbol
syntax: . which means: punctuation
category: .:Base
to input: type "C-x 8 RET 2307" or "C-x 8 RET WAVY LINE"
buffer code: #xE2 #x8C #x87
file code: not encodable by coding system iso-latin-1-dos
display: by this font (glyph code)
uniscribe:-outline-Symbola-normal-normal-normal-serif-13-*-*-*-p-*-iso8859-1 (#x640)
Character code properties: customize what to show
name: WAVY LINE
general-category: So (Symbol, Other)
decomposition: (8967) ('⌇')
There are text properties here:
fontified t
#+END_SRC
- Insert "WAVY LOW LINE": (insert-char 65103 1 t)
- NOK: high CPU load
- Character info of wavy low line:
#+BEGIN_SRC fundamental
position: 187 of 194 (96%), column: 0
character: ﹏ (displayed as ﹏) (codepoint 65103, #o177117, #xfe4f)
preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0xFE4F
script: han
syntax: w which means: word
category: .:Base, c:Chinese
to input: type "C-x 8 RET fe4f" or "C-x 8 RET WAVY LOW LINE"
buffer code: #xEF #xB9 #x8F
file code: not encodable by coding system iso-latin-1-dos
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-iso10646-1 (#x7096)
Character code properties: customize what to show
name: WAVY LOW LINE
old-name: SPACING WAVY UNDERSCORE
general-category: Pc (Punctuation, Connector)
decomposition: (compat 95) (compat '_')
There are text properties here:
fontified t
#+END_SRC
- At this moment, Emacs is very jerky due to the presence of wavy
low line character.
** (set-frame-font "MingLiu-10")
- Right after switching to this font, everything is smooth again!
- Check "WAVY LINE":
- OK: no high CPU load
- Character info of wavy line:
#+BEGIN_SRC fundamental
position: 184 of 194 (94%), column: 0
character: ⌇ (displayed as ⌇) (codepoint 8967, #o21407, #x2307)
preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0x2307
script: symbol
syntax: . which means: punctuation
category: .:Base
to input: type "C-x 8 RET 2307" or "C-x 8 RET WAVY LINE"
buffer code: #xE2 #x8C #x87
file code: not encodable by coding system iso-latin-1-dos
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-iso8859-1 (#x286)
Character code properties: customize what to show
name: WAVY LINE
general-category: So (Symbol, Other)
decomposition: (8967) ('⌇')
There are text properties here:
fontified t
#+END_SRC
- check "WAVY LOW LINE":
- OK: no high CPU load
- Character info of wavy low line:
#+BEGIN_SRC fundamental
position: 187 of 194 (96%), column: 0
character: ﹏ (displayed as ﹏) (codepoint 65103, #o177117, #xfe4f)
preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0xFE4F
script: han
syntax: w which means: word
category: .:Base, c:Chinese
to input: type "C-x 8 RET fe4f" or "C-x 8 RET WAVY LOW LINE"
buffer code: #xEF #xB9 #x8F
file code: not encodable by coding system iso-latin-1-dos
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-gb2312.1980-0 (#x7096)
Character code properties: customize what to show
name: WAVY LOW LINE
old-name: SPACING WAVY UNDERSCORE
general-category: Pc (Punctuation, Connector)
decomposition: (compat 95) (compat '_')
There are text properties here:
fontified t
#+END_SRC
** (set-language-environment) to UTF-8:
- Check "WAVY LINE":
- OK: no high CPU load
- Character info of wavy line:
#+BEGIN_SRC fundamental
position: 184 of 196 (93%), column: 0
character: ⌇ (displayed as ⌇) (codepoint 8967, #o21407, #x2307)
preferred charset: unicode-bmp (Unicode Basic Multilingual Plane (U+0000..U+FFFF))
code point in charset: 0x2307
script: symbol
syntax: . which means: punctuation
category: .:Base
to input: type "C-x 8 RET 2307" or "C-x 8 RET WAVY LINE"
buffer code: #xE2 #x8C #x87
file code: #xE2 #x8C #x87 (encoded by coding system utf-8-dos)
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-iso8859-1 (#x286)
Character code properties: customize what to show
name: WAVY LINE
general-category: So (Symbol, Other)
decomposition: (8967) ('⌇')
There are text properties here:
fontified t
#+END_SRC
- Check "WAVY LOW LINE":
- NOK: high CPU load
- Character info of wavy low line:
#+BEGIN_SRC fundamental
position: 189 of 196 (96%), column: 0
character: ﹏ (displayed as ﹏) (codepoint 65103, #o177117, #xfe4f)
preferred charset: unicode-bmp (Unicode Basic Multilingual Plane (U+0000..U+FFFF))
code point in charset: 0xFE4F
script: han
syntax: w which means: word
category: .:Base, c:Chinese
to input: type "C-x 8 RET fe4f" or "C-x 8 RET WAVY LOW LINE"
buffer code: #xEF #xB9 #x8F
file code: #xEF #xB9 #x8F (encoded by coding system utf-8-dos)
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-iso10646-1 (#x7096)
Character code properties: customize what to show
name: WAVY LOW LINE
old-name: SPACING WAVY UNDERSCORE
general-category: Pc (Punctuation, Connector)
decomposition: (compat 95) (compat '_')
There are text properties here:
fontified t
#+END_SRC
** (set-frame-font "Courier New-10")
- Check "WAVY LINE":
- NOK: high CPU load
- Character info of wavy line:
#+BEGIN_SRC fundamental
position: 184 of 196 (93%), column: 0
character: ⌇ (displayed as ⌇) (codepoint 8967, #o21407, #x2307)
preferred charset: unicode-bmp (Unicode Basic Multilingual Plane (U+0000..U+FFFF))
code point in charset: 0x2307
script: symbol
syntax: . which means: punctuation
category: .:Base
to input: type "C-x 8 RET 2307" or "C-x 8 RET WAVY LINE"
buffer code: #xE2 #x8C #x87
file code: #xE2 #x8C #x87 (encoded by coding system utf-8-dos)
display: by this font (glyph code)
uniscribe:-outline-Symbola-normal-normal-normal-serif-13-*-*-*-p-*-iso8859-1 (#x640)
Character code properties: customize what to show
name: WAVY LINE
general-category: So (Symbol, Other)
decomposition: (8967) ('⌇')
There are text properties here:
fontified t
#+END_SRC
- Check "WAVY LOW LINE":
- NOK: high CPU load
- Character info of wavy low line:
#+BEGIN_SRC fundamental
position: 189 of 196 (96%), column: 0
character: ﹏ (displayed as ﹏) (codepoint 65103, #o177117, #xfe4f)
preferred charset: unicode-bmp (Unicode Basic Multilingual Plane (U+0000..U+FFFF))
code point in charset: 0xFE4F
script: han
syntax: w which means: word
category: .:Base, c:Chinese
to input: type "C-x 8 RET fe4f" or "C-x 8 RET WAVY LOW LINE"
buffer code: #xEF #xB9 #x8F
file code: #xEF #xB9 #x8F (encoded by coding system utf-8-dos)
display: by this font (glyph code)
uniscribe:-outline-MingLiU-normal-normal-normal-mono-13-*-*-*-c-*-iso10646-1 (#x7096)
Character code properties: customize what to show
name: WAVY LOW LINE
old-name: SPACING WAVY UNDERSCORE
general-category: Pc (Punctuation, Connector)
decomposition: (compat 95) (compat '_')
There are text properties here:
fontified t
#+END_SRC
--
Georges Ko gko@gko.net 2016-10-08
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-07 17:01 ` Georges Ko
@ 2016-10-07 19:03 ` Eli Zaretskii
2016-10-08 2:59 ` Georges Ko
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-10-07 19:03 UTC (permalink / raw)
To: Georges Ko; +Cc: 24634
> From: Georges Ko <gko@gko.net>
> Date: Sat, 08 Oct 2016 01:01:40 +0800
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> >> ﹏
> >>
> >>
> >>
> >> ⌇
> >
> > What font(s) is/are used on your system to display these characters?
>
> I did some tests with "runemacs -Q", with the following results as an
> org-mode buffer.
>
> I can mitigate the problem by using language environment "English" and
> font "MingLiu-SIZE" (2nd step), the worst case being language
> environment "UTF-8" and font "Courier NEw-SIZE" (3rd step).
So Symbola and Courier New don't cause slowdown, while MingLiu does?
Do you have some custom fontset setup, or does Emacs use MingLiu for
the WAVY LOW LINE by default, in "emacs -Q"?
(But the way, setting language environment to UTF-8 on Windows is not
a good idea, it will cause you trouble unless you make further
customizations to countermand that.)
Thanks.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-07 19:03 ` Eli Zaretskii
@ 2016-10-08 2:59 ` Georges Ko
2016-10-08 6:21 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Georges Ko @ 2016-10-08 2:59 UTC (permalink / raw)
To: 24634
Eli Zaretskii <eliz@gnu.org> writes:
>> > What font(s) is/are used on your system to display these characters?
>>
>> I did some tests with "runemacs -Q", with the following results as an
>> org-mode buffer.
>>
>> I can mitigate the problem by using language environment "English" and
>> font "MingLiu-SIZE" (2nd step), the worst case being language
>> environment "UTF-8" and font "Courier NEw-SIZE" (3rd step).
>
> So Symbola and Courier New don't cause slowdown, while MingLiu does?
>
> Do you have some custom fontset setup, or does Emacs use MingLiu for
> the WAVY LOW LINE by default, in "emacs -Q"?
Emacs uses MingLiu in "emacs -Q" on my system.
In "Initial setup" I just do "emacs -Q" and insert these characters and
see the fonts used to display ASCII characters (1st line), WAVY LINE
(2nd line) and WAVY LOW LINE (3rd character), which are:
- ASCII -O-Courier New-NNN-mono-13-*-*-*-c-*-iso8859-1
- WAVY LINE -O-Symbola-NNN-serif-13-*-*-*-p-*-iso8859-1
- WAVY LOW LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso10646-1
and WAVY LINE (Symbola) is OK (no slowdown) and
WAVY LOW LINE (MingLiu) is NOK (slowdown).
After switching to "MingLiu-10" with (set-frame-font "MingLiu-10),
everything is smooth and using all use MingLiu-10 (2nd row of table):
- ASCII, WAVY LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1
- WAVY LOW LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-gb2312.1980-0
> (But the way, setting language environment to UTF-8 on Windows is not
> a good idea, it will cause you trouble unless you make further
> customizations to countermand that.)
OK, let's narrow the scope and not consider UTF-8 cases (rows 3 and 4).
Georges
--
Georges Ko gko@gko.net 2016-10-08
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 2:59 ` Georges Ko
@ 2016-10-08 6:21 ` Eli Zaretskii
2016-10-08 8:20 ` Georges Ko
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-10-08 6:21 UTC (permalink / raw)
To: Georges Ko; +Cc: 24634
> From: Georges Ko <gko@gko.net>
> Date: Sat, 08 Oct 2016 10:59:06 +0800
>
> > So Symbola and Courier New don't cause slowdown, while MingLiu does?
What about this question?
> > Do you have some custom fontset setup, or does Emacs use MingLiu for
> > the WAVY LOW LINE by default, in "emacs -Q"?
>
> Emacs uses MingLiu in "emacs -Q" on my system.
>
> In "Initial setup" I just do "emacs -Q" and insert these characters and
> see the fonts used to display ASCII characters (1st line), WAVY LINE
> (2nd line) and WAVY LOW LINE (3rd character), which are:
>
> - ASCII -O-Courier New-NNN-mono-13-*-*-*-c-*-iso8859-1
> - WAVY LINE -O-Symbola-NNN-serif-13-*-*-*-p-*-iso8859-1
> - WAVY LOW LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso10646-1
>
> and WAVY LINE (Symbola) is OK (no slowdown) and
> WAVY LOW LINE (MingLiu) is NOK (slowdown).
>
> After switching to "MingLiu-10" with (set-frame-font "MingLiu-10),
> everything is smooth and using all use MingLiu-10 (2nd row of table):
>
> - ASCII, WAVY LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-iso8859-1
> - WAVY LOW LINE -O-MingLiU-NNN-mono-13-*-*-*-c-*-gb2312.1980-0
As I said elsewhere, patches to make the offending code opt-out under
control of a Lisp variable are welcome. If you rebuild with the
compact_font_caches function (in alloc.c) disabled, i.e. make its body
empty, does the problem go away for you?
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 6:21 ` Eli Zaretskii
@ 2016-10-08 8:20 ` Georges Ko
2016-10-08 14:11 ` Georges Ko
0 siblings, 1 reply; 13+ messages in thread
From: Georges Ko @ 2016-10-08 8:20 UTC (permalink / raw)
To: 24634
Eli Zaretskii <eliz@gnu.org> writes:
>> > So Symbola and Courier New don't cause slowdown, while MingLiu does?
>
> What about this question?
WAVY LOW LINE in MingLiu does cause slow down if the default font is
Courier New (emacs -Q), but not if it is MingLiu.
> As I said elsewhere, patches to make the offending code opt-out under
> control of a Lisp variable are welcome. If you rebuild with the
> compact_font_caches function (in alloc.c) disabled, i.e. make its body
> empty, does the problem go away for you?
I'll try and see what happens.
--
Georges Ko gko@gko.net 2016-10-08
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 8:20 ` Georges Ko
@ 2016-10-08 14:11 ` Georges Ko
2016-10-08 14:43 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Georges Ko @ 2016-10-08 14:11 UTC (permalink / raw)
To: 24634
Georges Ko <gko@gko.net> writes:
>> As I said elsewhere, patches to make the offending code opt-out under
>> control of a Lisp variable are welcome. If you rebuild with the
>> compact_font_caches function (in alloc.c) disabled, i.e. make its body
>> empty, does the problem go away for you?
>
> I'll try and see what happens.
When compiled with compact_font_caches empty or not called, Emacs
crashes at launch...
--
Georges Ko gko@gko.net 2016-10-08
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 14:11 ` Georges Ko
@ 2016-10-08 14:43 ` Eli Zaretskii
2016-10-08 15:24 ` Georges Ko
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-10-08 14:43 UTC (permalink / raw)
To: Georges Ko; +Cc: 24634
> From: Georges Ko <gko@gko.net>
> Date: Sat, 08 Oct 2016 22:11:47 +0800
>
> When compiled with compact_font_caches empty or not called, Emacs
> crashes at launch...
Sorry, I failed to mention that you need to leave the mark_object call
there. IOW, the function compact_font_caches should be like this:
static void
compact_font_caches (void)
{
struct terminal *t;
for (t = terminal_list; t; t = t->next_terminal)
{
Lisp_Object cache = TERMINAL_FONT_CACHE (t);
mark_object (cache);
}
}
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 14:43 ` Eli Zaretskii
@ 2016-10-08 15:24 ` Georges Ko
2016-10-08 19:34 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Georges Ko @ 2016-10-08 15:24 UTC (permalink / raw)
To: 24634
Eli Zaretskii <eliz@gnu.org> writes:
>> When compiled with compact_font_caches empty or not called, Emacs
>> crashes at launch...
>
> Sorry, I failed to mention that you need to leave the mark_object call
> there. IOW, the function compact_font_caches should be like this:
>
> static void
> compact_font_caches (void)
> {
> struct terminal *t;
>
> for (t = terminal_list; t; t = t->next_terminal)
> {
> Lisp_Object cache = TERMINAL_FONT_CACHE (t);
> mark_object (cache);
> }
> }
OK, this version fixes all cases!
--
Georges Ko gko@gko.net 2016-10-08
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 15:24 ` Georges Ko
@ 2016-10-08 19:34 ` Eli Zaretskii
2016-10-10 9:54 ` Georges Ko
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-10-08 19:34 UTC (permalink / raw)
To: Georges Ko; +Cc: 24634-done
> From: Georges Ko <gko@gko.net>
> Date: Sat, 08 Oct 2016 23:24:24 +0800
>
> > static void
> > compact_font_caches (void)
> > {
> > struct terminal *t;
> >
> > for (t = terminal_list; t; t = t->next_terminal)
> > {
> > Lisp_Object cache = TERMINAL_FONT_CACHE (t);
> > mark_object (cache);
> > }
> > }
>
> OK, this version fixes all cases!
OK, I've now added a variable which you can set to non-nil to disable
font cache compaction. See the latest emacs-25 branch.
Thanks.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters
2016-10-08 19:34 ` Eli Zaretskii
@ 2016-10-10 9:54 ` Georges Ko
0 siblings, 0 replies; 13+ messages in thread
From: Georges Ko @ 2016-10-10 9:54 UTC (permalink / raw)
To: 24634
Eli Zaretskii <eliz@gnu.org> writes:
>> OK, this version fixes all cases!
>
> OK, I've now added a variable which you can set to non-nil to disable font
> cache compaction. See the latest emacs-25 branch.
OK, thanks!
--
Georges Ko gko@gko.net 2016-10-10
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2016-10-10 9:54 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-07 4:59 bug#24634: 25.1 on Windows (native and cygwin+w32): high CPU load with "wavy" characters Georges Ko
2016-10-07 7:16 ` Nikolay Kudryavtsev
2016-10-07 8:05 ` Eli Zaretskii
2016-10-07 17:01 ` Georges Ko
2016-10-07 19:03 ` Eli Zaretskii
2016-10-08 2:59 ` Georges Ko
2016-10-08 6:21 ` Eli Zaretskii
2016-10-08 8:20 ` Georges Ko
2016-10-08 14:11 ` Georges Ko
2016-10-08 14:43 ` Eli Zaretskii
2016-10-08 15:24 ` Georges Ko
2016-10-08 19:34 ` Eli Zaretskii
2016-10-10 9:54 ` Georges Ko
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.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).