Package: emacs;
Reported by: "Felix E. Klee" <felix.klee <at> inka.de>
Date: Sun, 26 Apr 2015 17:28:02 UTC
Severity: normal
Done: Jan Djärv <jan.h.d <at> swipnet.se>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: "Jan D." <jan.h.d <at> swipnet.se> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: "Felix E. Klee" <felix.klee <at> inka.de>, 20432 <at> debbugs.gnu.org Subject: bug#20432: GDK_SCALE=2 GDK_DPI_SCALE=0.5 destroys GTK+ 3 scroll bar Date: Fri, 15 May 2015 09:01:52 +0200
Hi. Looks like you had an X protocol error. Its possible we haven’t covered all cases for GDK_SCALE yet. Jan D. > 15 maj 2015 kl. 04:59 skrev Paul Eggert <eggert <at> cs.ucla.edu>: > > Jan D. wrote: >>> By the way, on my Fedora 21 x86-64 host, setting GDK_SCALE=2 >>> GDK_DPI_SCALE=0.5 has no effect on emacs -Q, even with the recent >>> fixes. Perhaps this is due to the races you mentioned? >> >> No, that just affects the initial frame size. >> You should see an effect on toolbar and scroll bar size (they should be twice as >> big). > > Yes, you're right, it works. I had misconfigured my Emacs (configured with the Lucid toolkit). Sorry about the confusion. > > I suppose I should mention that when I tried a properly-configured Emacs with GDK_SCALE=2 it dumped core for me. I was running on Fedora 21 x86-64 (which has gtk3-3.14.13-1.fc21.x86_64) and displaying over the Internet to Ubuntu 15.04. I can't reproduce the problem so it could be a timing thing. The core dump occurs within gtk_window_get_size, which is called by xg_frame_set_char_size. I wasn't running under a debugger, so I got only this backtrace: > >> $ GDK_SCALE=2 src/emacs -Q >> X protocol error: BadAccess (attempt to access private resource denied) on protocol request 130 >> When compiled with GTK, Emacs cannot recover from X disconnects. >> This is a GTK bug: https://bugzilla.gnome.org/show_bug.cgi?id=85715 >> For details, see etc/PROBLEMS. >> Fatal error 6: Aborted >> Backtrace: >> src/emacs[0x503bc2] >> src/emacs[0x4ebb09] >> src/emacs[0x503c53] >> src/emacs[0x4be78e] >> src/emacs[0x4c2a28] >> src/emacs[0x4c2a8d] >> /lib64/libX11.so.6(_XError+0x11d)[0x7f0edfd1d4dd] >> /lib64/libX11.so.6(+0x42427)[0x7f0edfd1a427] >> /lib64/libX11.so.6(+0x424e5)[0x7f0edfd1a4e5] >> /lib64/libX11.so.6(_XReply+0x230)[0x7f0edfd1b490] >> /lib64/libX11.so.6(XGetGeometry+0x8e)[0x7f0edfcffd9e] >> /lib64/libgdk-3.so.0(+0x5d37f)[0x7f0ee1b7537f] >> /lib64/libgdk-3.so.0(gdk_window_get_geometry+0x104)[0x7f0ee1b4e014] >> /lib64/libgdk-3.so.0(gdk_screen_get_monitor_at_window+0x8f)[0x7f0ee1b4974f] >> /lib64/libgtk-3.so.0(+0x332d79)[0x7f0ee2104d79] >> /lib64/libgtk-3.so.0(+0x3367fb)[0x7f0ee21087fb] >> /lib64/libgtk-3.so.0(gtk_window_get_size+0xab)[0x7f0ee210e88b] >> src/emacs[0x4ddff8] >> src/emacs[0x4c94fa] >> src/emacs[0x4273b0] >> src/emacs[0x4d2829] >> src/emacs[0x55bb33] >> src/emacs[0x58ecb3] >> src/emacs[0x55b57f] >> src/emacs[0x55b94b] >> src/emacs[0x58ecb3] >> src/emacs[0x55b94b] >> src/emacs[0x58ecb3] >> src/emacs[0x55b94b] >> src/emacs[0x58ecb3] >> src/emacs[0x55b94b] >> src/emacs[0x58ecb3] >> src/emacs[0x55aa08] >> src/emacs[0x55ad0b] >> src/emacs[0x55e2d1] >> src/emacs[0x55a107] >> src/emacs[0x4ee8ac] >> src/emacs[0x559fe3] >> src/emacs[0x4ebf08] >> src/emacs[0x4f04bb] >> src/emacs[0x4f0808] >> ... >> Aborted (core dumped) > > > Addrline converts this to: > > emacs_backtrace at /home/eggert/src/gnu/emacs/static-checking/src/sysdep.c:2188 > terminate_due_to_signal at /home/eggert/src/gnu/emacs/static-checking/src/emacs.c:374 > emacs_abort at /home/eggert/src/gnu/emacs/static-checking/src/sysdep.c:2201 > x_connection_closed at /home/eggert/src/gnu/emacs/static-checking/src/xterm.c:8525 > x_error_quitter at /home/eggert/src/gnu/emacs/static-checking/src/xterm.c:8617 > x_error_handler at /home/eggert/src/gnu/emacs/static-checking/src/xterm.c:8588 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > ?? ??:0 > xg_clear_under_internal_border at /home/eggert/src/gnu/emacs/static-checking/src/gtkutil.c:848 > (inlined by) xg_frame_set_char_size at /home/eggert/src/gnu/emacs/static-checking/src/gtkutil.c:947 > x_set_window_size at /home/eggert/src/gnu/emacs/static-checking/src/xterm.c:9729 > adjust_frame_size at /home/eggert/src/gnu/emacs/static-checking/src/frame.c:491 (discriminator 8) > Fx_create_frame at /home/eggert/src/gnu/emacs/static-checking/src/xfns.c:3305 > Ffuncall at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2719 > exec_byte_code at /home/eggert/src/gnu/emacs/static-checking/src/bytecode.c:919 > funcall_lambda at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2957 > backtrace_debug_on_exit at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:159 > (inlined by) Ffuncall at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2791 > exec_byte_code at /home/eggert/src/gnu/emacs/static-checking/src/bytecode.c:919 > backtrace_debug_on_exit at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:159 > (inlined by) Ffuncall at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2791 > exec_byte_code at /home/eggert/src/gnu/emacs/static-checking/src/bytecode.c:919 > backtrace_debug_on_exit at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:159 > (inlined by) Ffuncall at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2791 > exec_byte_code at /home/eggert/src/gnu/emacs/static-checking/src/bytecode.c:919 > backtrace_debug_on_exit at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:159 > (inlined by) Ffuncall at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2791 > exec_byte_code at /home/eggert/src/gnu/emacs/static-checking/src/bytecode.c:919 > apply_lambda at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2829 > eval_sub at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:2256 > Feval at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:1997 (discriminator 3) > internal_condition_case at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:1350 > top_level_1 at /home/eggert/src/gnu/emacs/static-checking/src/keyboard.c:1162 > internal_catch at /home/eggert/src/gnu/emacs/static-checking/src/eval.c:1110 > command_loop at /home/eggert/src/gnu/emacs/static-checking/src/keyboard.c:1118 > recursive_edit_1 at /home/eggert/src/gnu/emacs/static-checking/src/keyboard.c:729 > Frecursive_edit at /home/eggert/src/gnu/emacs/static-checking/src/keyboard.c:800
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.