unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#17876: 24.3; Incorrect frame resize
@ 2014-06-29 14:50 penthief
  2020-12-04 11:46 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 3+ messages in thread
From: penthief @ 2014-06-29 14:50 UTC (permalink / raw)
  To: 17876

When setting the a font on a frame after a resize, there is an apparent
race condition that more often than not, causes the frame height and/or 
width to be reset to an incorrect value.

This behaviour also occurs on 24.3.92.

1. Create a file bug-frame-resize.el with the following contents 
(assuming that Courier and Monaco are present on the system).

(setq -last-used-font nil)
(setq -target-font-1 "Courier")
(setq -target-font-2 "Monaco")
(setq -target-height 5)
(setq -target-width 5)

(defun bug-frame-resize ()
   (interactive)
   (with-selected-frame (make-frame)
     (set-frame-width (selected-frame) -target-width)
     (set-frame-height (selected-frame) -target-height)
     (let ((target-font (if (equal -last-used-font -target-font-1)
			   -target-font-2
			 -target-font-1)))
       (setq -last-used-font target-font)
       (set-frame-font target-font))))

2. Start emacs

$ /usr/bin/emacs24-x -Q -l bug-frame-resize.el

3. Type "M-x bug-frame-resize" four or five times.

The frames appear with the correct size briefly, but then resize after a 
split second. On this machine this usually results one of the height or 
width is incorrect on each of the created frames.

The bug requires the font to be changed when creating the frame.

In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)
  of 2014-03-07 on lamiak, modified by Debian
Windowing system distributor `The X.Org Foundation', version 
11.0.11501000
System Description:	Ubuntu 14.04 LTS

Configured using:
  `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu'
  '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
  '--localstatedir=/var/lib' '--infodir=/usr/share/info'
  '--mandir=/usr/share/man' '--with-pop=yes'
  
'--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp'
  '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes'
  '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars'
  'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector
  --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'
  'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'
  'CPPFLAGS=-D_FORTIFY_SOURCE=2''

Important settings:
   value of $LC_CTYPE: en_US.UTF-8
   value of $LANG: en_US.UTF-8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix
   default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
   tooltip-mode: t
   mouse-wheel-mode: t
   tool-bar-mode: t
   menu-bar-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
   line-number-mode: t
   transient-mark-mode: t

Recent input:
M-x r e - e - b <tab> <return>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces
cus-face macroexp files text-properties overlay sha1 md5 base64 format
env code-pages mule custom widget hashtable-print-readable backquote
make-network-process dbusbind dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)






^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#17876: 24.3; Incorrect frame resize
  2014-06-29 14:50 bug#17876: 24.3; Incorrect frame resize penthief
@ 2020-12-04 11:46 ` Lars Ingebrigtsen
  2020-12-04 12:15   ` Lars Ingebrigtsen
  0 siblings, 1 reply; 3+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-04 11:46 UTC (permalink / raw)
  To: penthief; +Cc: 17876

penthief <penthief@SDF.ORG> writes:

> When setting the a font on a frame after a resize, there is an apparent
> race condition that more often than not, causes the frame height
> and/or width to be reset to an incorrect value.
>
> This behaviour also occurs on 24.3.92.
>
> 1. Create a file bug-frame-resize.el with the following contents
> (assuming that Courier and Monaco are present on the system).
>
> (setq -last-used-font nil)
> (setq -target-font-1 "Courier")
> (setq -target-font-2 "Monaco")
> (setq -target-height 5)
> (setq -target-width 5)
>
> (defun bug-frame-resize ()
>   (interactive)
>   (with-selected-frame (make-frame)
>     (set-frame-width (selected-frame) -target-width)
>     (set-frame-height (selected-frame) -target-height)
>     (let ((target-font (if (equal -last-used-font -target-font-1)
> 			   -target-font-2
> 			 -target-font-1)))
>       (setq -last-used-font target-font)
>       (set-frame-font target-font))))
>
> 2. Start emacs
>
> $ /usr/bin/emacs24-x -Q -l bug-frame-resize.el
>
> 3. Type "M-x bug-frame-resize" four or five times.
>
> The frames appear with the correct size briefly, but then resize after
> a split second. On this machine this usually results one of the height
> or width is incorrect on each of the created frames.

(This bug report unfortunately got no response at the time.)

I tried reproducing this in Emacs 28 on Debian/bullseye, but was unable
to.  All the Monaco frames have the exact same width/height, and so do
all the Courier frames.

Do you still see this issue in more recent Emacs versions?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#17876: 24.3; Incorrect frame resize
  2020-12-04 11:46 ` Lars Ingebrigtsen
@ 2020-12-04 12:15   ` Lars Ingebrigtsen
  0 siblings, 0 replies; 3+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-04 12:15 UTC (permalink / raw)
  To: 17876

Lars Ingebrigtsen <larsi@gnus.org> writes:

> I tried reproducing this in Emacs 28 on Debian/bullseye, but was unable
> to.  All the Monaco frames have the exact same width/height, and so do
> all the Courier frames.
>
> Do you still see this issue in more recent Emacs versions?

The address bounced, so it seems unlikely that we'll make more progress
here, and I'm closing this bug report.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-12-04 12:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-29 14:50 bug#17876: 24.3; Incorrect frame resize penthief
2020-12-04 11:46 ` Lars Ingebrigtsen
2020-12-04 12:15   ` Lars Ingebrigtsen

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).