From: Eli Zaretskii <eliz@gnu.org>
To: luangruo@yahoo.com
Cc: mwd@md5i.com, 56561@debbugs.gnu.org
Subject: bug#56561: 29.0.50; Infloop in try_window
Date: Fri, 15 Jul 2022 18:27:15 +0300 [thread overview]
Message-ID: <83fsj2s8fg.fsf@gnu.org> (raw)
In-Reply-To: <83ilnysbc5.fsf@gnu.org> (message from Eli Zaretskii on Fri, 15 Jul 2022 17:24:26 +0300)
> Cc: mwd@md5i.com, 56561@debbugs.gnu.org
> Date: Fri, 15 Jul 2022 17:24:26 +0300
> From: Eli Zaretskii <eliz@gnu.org>
>
> > From: Po Lu <luangruo@yahoo.com>
> > Cc: mwd@md5i.com, 56561@debbugs.gnu.org
> > Date: Fri, 15 Jul 2022 21:54:24 +0800
> >
> > BTW, I have a question about the fix: redisplay cannot run when a
> > tooltip is displayed as popup menu help-text, so adjust_glyph_matrix and
> > the subsequent try_window call that is required to generate the display
> > contents will not be called in time, leading to a blank tooltip.
> >
> > The call could previously never fail, since the tooltip code specifies
> > TRY_WINDOW_IGNORE_FONTS_CHANGE.
> >
> > Would it be appropriate to call adjust_frame_glyphs and try_window again
> > if this call to try_window in Fx_show_tip fails?
>
> You mean, adjust_frame_glyphs, right?
>
> We probably should do that
On second thought, I take this back. I don't see how we could have a
blank tooltip. We call try_window just so we could compute the size
of the text in it, which then allows us to know the size of the
tooltip. The situation where nrows_scale_factor is increased happens
when we get to the bottom of the window, which for a tooltip means we
already laid out all the text and are just producing empty glyph rows
beyond the end of the text. ncols_scale_factor could theoretically
happen before we reach the end of the text, but I'd like to see
something like that happening before I believe it; and even if it does
happen in the very first line, the tooltip will not be empty, just
truncated.
So I cannot see how this case could produce an empty tooltip, and I
have hard time imagining how it could even produce a truncated text.
We could add an assertion to verify that try_window gets to ZV in this
case before it returns, if we want to be able to detect those cases.
> We need a recipe to trigger the reverse, to be able to test a
> solution.
That part is still true.
next prev parent reply other threads:[~2022-07-15 15:27 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-14 18:57 bug#56561: 29.0.50; Infloop in try_window Michael Welsh Duggan
2022-07-14 19:28 ` Eli Zaretskii
2022-07-14 22:44 ` Michael Welsh Duggan
2022-07-15 6:14 ` Eli Zaretskii
2022-07-15 10:52 ` Eli Zaretskii
2022-07-15 13:54 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-15 14:24 ` Eli Zaretskii
2022-07-15 15:27 ` Eli Zaretskii [this message]
2022-07-15 15:37 ` Eli Zaretskii
2022-07-15 15:56 ` Eli Zaretskii
2022-07-16 3:15 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 5:50 ` Eli Zaretskii
2022-07-16 5:55 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 6:33 ` Eli Zaretskii
2022-07-16 6:42 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 7:32 ` Eli Zaretskii
2022-07-16 8:22 ` Eli Zaretskii
2022-07-16 8:47 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 8:59 ` Eli Zaretskii
2022-07-16 10:34 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 10:57 ` Eli Zaretskii
2022-07-16 11:07 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 11:45 ` Eli Zaretskii
2022-07-16 12:34 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 12:38 ` Eli Zaretskii
2022-07-17 0:45 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-17 5:43 ` Eli Zaretskii
2022-07-17 6:29 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-17 6:40 ` Eli Zaretskii
2022-07-17 7:43 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-17 13:29 ` Eli Zaretskii
2022-07-18 0:57 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-18 12:37 ` Eli Zaretskii
2022-07-19 0:54 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-21 7:14 ` Eli Zaretskii
2022-07-21 8:17 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 3:14 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 3:11 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 3:07 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-15 14:03 ` Michael Welsh Duggan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83fsj2s8fg.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=56561@debbugs.gnu.org \
--cc=luangruo@yahoo.com \
--cc=mwd@md5i.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).