[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "Final" version of tty child frames
From: |
Eli Zaretskii |
Subject: |
Re: "Final" version of tty child frames |
Date: |
Tue, 22 Oct 2024 16:44:04 +0300 |
> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, Jared Finder <jared@finder.org>,
> emacs-devel@gnu.org
> Date: Tue, 22 Oct 2024 12:40:21 +0200
>
> martin rudalics <rudalics@gmx.at> writes:
>
> > Building complains here as
> >
> > In file included from ../../src/term.c:30:
> > ../../src/lisp.h: In function ‘Ftty_display_pixel_height’:
> > ../../src/lisp.h:406:24: warning: ‘height’ may be used uninitialized
> > [-Wmaybe-uninitialized]
> > 406 | XIL ((EMACS_INT) (((EMACS_UINT) (n) << INTTYPEBITS) +
> > Lisp_Int0))
> > | ^
> > ../../src/term.c:4907:14: note: ‘height’ was declared here
> > 4907 | int width, height;
> > | ^~~~~~
> > ../../src/lisp.h: In function ‘Ftty_display_pixel_width’:
> > ../../src/lisp.h:406:24: warning: ‘width’ may be used uninitialized
> > [-Wmaybe-uninitialized]
> > 406 | XIL ((EMACS_INT) (((EMACS_UINT) (n) << INTTYPEBITS) +
> > Lisp_Int0))
> > | ^
> > ../../src/term.c:4896:7: note: ‘width’ was declared here
> > 4896 | int width, height;
> > | ^~~~~
>
> That's code like this:
>
> {
> int width, height;
> tty_display_dimension (display, &width, &height);
> return make_fixnum (height);
> }
>
> So width and height are returned by the call to tty_display_dimension.
> TBH, I can't make sense of the warning.
I could: tty_display_dimension includes a switch without 'default',
and thus might not set width and height to any value. I installed
what should be a fix for that, and I hope Martin will confirm that the
warning is now gone.
> FWIW, clang doesn't complain.
It probably doesn't analyze the code so thoroughly.
> > One thing I noticed is that changing the background color works only
> > after I changed something like the position or size.
>
> Probably a SET_FRAME_GARBAGED missing somewhere, or something like that.
If someone gives the recipe for this, I could look into it.
> > Also I would like to get rid of those |+- borders. What would I have
> > to do?
>
> If you want to get rid of the border completely add a frame parameter
> (undecorated . t), Default if no no undecorated is specified, it to not
> draw borders.
You mean, if undecorated is not specified, the default is to _draw_
the borders, yes? Because the examples I used do not specify
undecorated, and the borders were drawn.
Re: "Final" version of tty child frames, Jared Finder, 2024/10/28
Re: "Final" version of tty child frames, Dr. Arne Babenhauserheide, 2024/10/22
Re: "Final" version of tty child frames, Eli Zaretskii, 2024/10/22