unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
@ 2022-06-14 14:08 समीर सिंह Sameer Singh
  2022-06-14 17:44 ` Eli Zaretskii
  2022-06-15  0:56 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 2 replies; 17+ messages in thread
From: समीर सिंह Sameer Singh @ 2022-06-14 14:08 UTC (permalink / raw)
  To: 55970


[-- Attachment #1.1: Type: text/plain, Size: 3415 bytes --]

I don't know whether these two features are meant to be used together, but
I still felt the need to report a potential bug.

Recipe to reproduce:
1. './configure --with-pgtk
--without-toolkit-scroll-bars --enable-checking=yes,glyphs
--enable-check-lisp-object-type 'CFLAGS=-O0 -g3''
2. emacs -Q
3. Drag the scrollbar or click on the scroll area where the scrollbar is
not present
4. emacs crashes

I have attached the gdb output, if something is missing please tell me.
Thank You.

In GNU Emacs 29.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.34,
cairo version 1.17.6)
 of 2022-06-14 built on archlinux
Repository revision: 03124c42019401022e58ca9ebfa9b41735957ffb
Repository branch: master
System Description: Arch Linux

Configured using:
 'configure --with-pgtk --without-toolkit-scroll-bars
 --enable-checking=yes,glyphs --enable-check-lisp-object-type
 'CFLAGS=-O0 -g3''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PGTK PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF WEBP XIM GTK3 ZLIB

Important settings:
  value of $LANG: hi_IN.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-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
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message mailcap yank-media rmc puny
dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg
rfc6068 epg-config gnus-util text-property-search time-date seq gv
subr-x byte-opt bytecomp byte-compile cconv mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs
cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs faces cus-face macroexp files window text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify
dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 43476 8688)
 (symbols 48 5707 0)
 (strings 32 15948 1629)
 (string-bytes 1 524087)
 (vectors 16 11402)
 (vector-slots 8 169757 11270)
 (floats 8 20 50)
 (intervals 56 202 0)
 (buffers 992 10))

[-- Attachment #1.2: Type: text/html, Size: 3878 bytes --]

[-- Attachment #2: gdb.txt --]
[-- Type: text/plain, Size: 8913 bytes --]

GNU gdb (GDB) 12.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./emacs...
SIGINT is used by the debugger.
Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
DISPLAY = :1
WAYLAND_DISPLAY = wayland-0
TERM = xterm-256color
Breakpoint 1 at 0x1b00bf: file emacs.c, line 420.
(gdb) run -Q
Starting program: /home/ss141309/emacs-debug/src/emacs -Q
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7ffff0dfe640 (LWP 13368)]
[New Thread 0x7fffebfff640 (LWP 13369)]
[New Thread 0x7fffeb7fe640 (LWP 13370)]
[New Thread 0x7fffeaffd640 (LWP 13371)]
[New Thread 0x7fffe9bff640 (LWP 13372)]
[Thread 0x7fffe9bff640 (LWP 13372) exited]
[New Thread 0x7fffe9bff640 (LWP 13373)]
[New Thread 0x7fffe93fe640 (LWP 13374)]
[Thread 0x7fffe9bff640 (LWP 13373) exited]
[New Thread 0x7fffe9bff640 (LWP 13375)]
[Thread 0x7fffe93fe640 (LWP 13374) exited]
[New Thread 0x7fffe93fe640 (LWP 13376)]
[Thread 0x7fffe9bff640 (LWP 13375) exited]
[Thread 0x7fffe93fe640 (LWP 13376) exited]

Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
420     {
(gdb) bt full
#0  terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
#1  0x0000555555740e5e in emacs_abort () at sysdep.c:2310
#2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300 <kbd_buffer+256>) at keyboard.c:6140
        button = 0
        start_pos = XIL(0)
        is_double = false
        position = XIL(0x5555567fd423)
        start_pos_ptr = 0x7ffff1e414c0
        i = -493962752
#3  0x0000555555716e6c in kbd_buffer_get_event (kbp=0x7fffffffd7f0, used_mouse_menu=0x7fffffffddfd, end_time=0x0) at keyboard.c:4264
        pinch_dx = 6.9533558073243381e-310
        pinch_dy = 0
        pinch_angle = 0
        frame = XIL(0x5555562a4a05)
        focus = XIL(0)
        event = 0x555555e25300 <kbd_buffer+256>
        obj = XIL(0)
        str = make_fixnum(0)
#4  0x000055555571007c in read_event_from_main_queue (end_time=0x0, local_getcjmp=0x7fffffffdc00, used_mouse_menu=0x7fffffffddfd)
    at keyboard.c:2225
        c = XIL(0)
        save_jump = {{
            __jmpbuf = {0, 0, 0, 0, 0, 0, 0, 0},
            __mask_was_saved = 0,
            __saved_mask = {
              __val = {0 <repeats 16 times>}
            }
          }}
        kb = 0x55555618a0b0
        count = {
          bytes = 96
        }
#5  0x00005555557104b0 in read_decoded_event_from_main_queue
    (end_time=0x0, local_getcjmp=0x7fffffffdc00, prev_event=XIL(0), used_mouse_menu=0x7fffffffddfd) at keyboard.c:2289
--Type <RET> for more, q to quit, c to continue without paging--c
        nextevt = XIL(0x555555e925c0)
        frame = 0x555555708d74 <XSYMBOL+106>
        terminal = 0x0
        events = {XIL(0x7fffffffd9a0), XIL(0x555555708dcd), XIL(0), XIL(0x555555e925c0), XIL(0), XIL(0), XIL(0x7fffffffd9c0), XIL(0x555555708e27), XIL(0x7fffffffd9f0), make_fixnum(358375300), XIL(0x7fffffffd9f0), make_fixnum(23456248509341), XIL(0x555555ff8c53), XIL(0), XIL(0), XIL(0)}
        n = 0
#6  0x000055555571294a in read_char (commandflag=1, map=XIL(0x555555f64d53), prev_event=XIL(0), used_mouse_menu=0x7fffffffddfd, end_time=0x0) at keyboard.c:2919
        c = XIL(0)
        local_getcjmp = {{
            __jmpbuf = {0, 6432812582727365702, 93825004165485, 48, 93824997223096, 140737354125312, 6432812582834320454, 869377159773205574},
            __mask_was_saved = 0,
            __saved_mask = {
              __val = {0, 140737488346224, 93824994998017, 96, 1442080464, 140737488346336, 93824995052037, 93825002786147, 96, 140737488346304, 0, 93825002786163, 93825001924032, 0, 0, 140737488346336}
            }
          }}
        save_jump = {{
            __jmpbuf = {93825002786147, 0, 140737488346496, 39024, 39024, 93825001963056, 140737488346400, 93824994179976},
            __mask_was_saved = -8912,
            __saved_mask = {
              __val = {39024, 140737488346448, 93824994180065, 140737488346448, 0, 0, 93825001924032, 140737488346480, 93824994020724, 93825002786147, 0, 140737488346528, 93824994020813, 139642271685888, 93825001924032, 0}
            }
          }}
        tem = XIL(0x2aaa9b89fff0)
        save = XIL(0)
        previous_echo_area_message = XIL(0)
        also_record = XIL(0)
        reread = false
        recorded = false
        polling_stopped_here = true
        orig_kboard = 0x55555618a0b0
        jmpcount = {
          bytes = 96
        }
#7  0x0000555555727161 in read_key_sequence (keybuf=0x7fffffffdfd0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9965
        interrupted_kboard = 0x55555618a0b0
        interrupted_frame = 0x5555562a4a00
        key = XIL(0x5555557f7701)
        used_mouse_menu = false
        echo_local_start = 0
        last_real_key_start = 0
        keys_local_start = 0
        new_binding = XIL(0x60)
        count = {
          bytes = 96
        }
        t = 0
        echo_start = 0
        keys_start = 0
        current_binding = XIL(0x555555f64d53)
        first_unbound = 31
        mock_input = 0
        used_mouse_menu_history = {false <repeats 30 times>}
        fkey = {
          parent = XIL(0x555555faa2c3),
          map = XIL(0x555555faa2c3),
          start = 0,
          end = 0
        }
        keytran = {
          parent = XIL(0x7ffff1e388a3),
          map = XIL(0x7ffff1e388a3),
          start = 0,
          end = 0
        }
        indec = {
          parent = XIL(0x555555faa2d3),
          map = XIL(0x555555faa2d3),
          start = 0,
          end = 0
        }
        shift_translated = false
        delayed_switch_frame = XIL(0)
        original_uppercase = XIL(0)
        original_uppercase_position = -1
        dummyflag = false
        starting_buffer = 0x7ffff1714708
        fake_prefixed_keys = XIL(0)
        first_event = XIL(0)
        second_event = XIL(0)
#8  0x000055555570d49b in command_loop_1 () at keyboard.c:1391
        cmd = XIL(0)
        keybuf = {XIL(0), XIL(0), XIL(0x7fffffffe010), XIL(0), XIL(0), XIL(0x555555e925c0), XIL(0x7fffffffe020), make_fixnum(23456248749459), XIL(0x7fffffffe030), XIL(0), XIL(0x7fffffffe050), XIL(0x5555557f76a7), XIL(0x7fffffffe0a0), XIL(0x555555e925c0), XIL(0), XIL(0), XIL(0x7fffffffe070), XIL(0x60), XIL(0x7fffffffe070), XIL(0x555555df3540), XIL(0x7fffffffe0b0), make_fixnum(23456248756140), XIL(0x100000000), XIL(0x90), XIL(0x7fffffffe0b0), XIL(0x555555ed5200), XIL(0x7fffffffe0e0), XIL(0x90), XIL(0x7fffffffe0e0), XIL(0x5555557fdda1)}
        i = 32767
        prev_modiff = 0
        prev_buffer = 0x0
        already_adjusted = false
#9  0x00005555557fd934 in internal_condition_case (bfun=0x55555570cfe4 <command_loop_1>, handlers=XIL(0x90), hfun=0x55555570c3a9 <cmd_error>) at eval.c:1485
        val = XIL(0x7fffffffe140)
        c = 0x555555ed5200
#10 0x000055555570cb9d in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1132
        val = XIL(0xf3c0)
#11 0x00005555557fca59 in internal_catch (tag=XIL(0xf3c0), func=0x55555570cb73 <command_loop_2>, arg=XIL(0x90)) at eval.c:1208
        val = XIL(0x555555708e27)
        c = 0x555555ed5800
#12 0x000055555570cb2f in command_loop () at keyboard.c:1110
#13 0x000055555570be4b in recursive_edit_1 () at keyboard.c:719
        count = {
          bytes = 32
        }
        val = XIL(0x555555804237)
#14 0x000055555570c077 in Frecursive_edit () at keyboard.c:802
        count = {
          bytes = 0
        }
        buffer = XIL(0)
#15 0x0000555555707525 in main (argc=2, argv=0x7fffffffe488) at emacs.c:2511
        stack_bottom_variable = 0x7fffffffe338
        no_loadup = false
        junk = 0x0
        dname_arg = 0x0
        ch_to_dir = 0x0
        original_pwd = 0x0
        dump_mode = 0x0
        skip_args = 0
        temacs = 0x0
        attempt_load_pdump = true
        only_version = false
        rlim = {
          rlim_cur = 10022912,
          rlim_max = 18446744073709551615
        }
        lc_all = 0x0
        sockfd = -1
        module_assertions = false
(gdb) xbacktrace
(gdb) q
A debugging session is active.

        Inferior 1 [process 13365] will be killed.

Quit anyway? (y or n) y

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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 14:08 bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags समीर सिंह Sameer Singh
@ 2022-06-14 17:44 ` Eli Zaretskii
  2022-06-14 17:48   ` समीर सिंह Sameer Singh
  2022-06-15  0:56 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2022-06-14 17:44 UTC (permalink / raw)
  To: समीर सिंह Sameer Singh
  Cc: 55970

> From: समीर सिंह Sameer Singh
>  <lumarzeli30@gmail.com>
> Date: Tue, 14 Jun 2022 19:38:32 +0530
> 
> Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
> 420     {
> (gdb) bt full
> #0  terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
> #1  0x0000555555740e5e in emacs_abort () at sysdep.c:2310
> #2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300 <kbd_buffer+256>) at keyboard.c:6140
>         button = 0
>         start_pos = XIL(0)
>         is_double = false
>         position = XIL(0x5555567fd423)
>         start_pos_ptr = 0x7ffff1e414c0
>         i = -493962752

Please show the result of the following:

  (gdb) frame 2
  (gdb) p *event

(This assumes that "frame 2 gets you to the frame in make_lispy_event
above; if not adjust the frame number accordingly.)

Thanks.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 17:44 ` Eli Zaretskii
@ 2022-06-14 17:48   ` समीर सिंह Sameer Singh
  2022-06-14 18:30     ` Eli Zaretskii
  0 siblings, 1 reply; 17+ messages in thread
From: समीर सिंह Sameer Singh @ 2022-06-14 17:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 55970

[-- Attachment #1: Type: text/plain, Size: 1593 bytes --]

This was the output

Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6,
backtrace_limit=40) at emacs.c:420
420     {
(gdb) frame 2
#2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300
<kbd_buffer+256>) at keyboard.c:6140
6140              emacs_abort ();
(gdb) p *event
$1 = {
 kind = SCROLL_BAR_CLICK_EVENT,
 part = scroll_bar_handle,
 code = 0,
 modifiers = 0,
 x = make_fixnum(17531),
 y = make_fixnum(1244637),
 timestamp = 0,
 frame_or_window = XIL(0x5555560794a5),
 arg = XIL(0),
 device = XIL(0x30)
}

On Tue, Jun 14, 2022 at 11:14 PM Eli Zaretskii <eliz@gnu.org> wrote:

> > From: समीर सिंह Sameer Singh
> >  <lumarzeli30@gmail.com>
> > Date: Tue, 14 Jun 2022 19:38:32 +0530
> >
> > Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6,
> backtrace_limit=40) at emacs.c:420
> > 420     {
> > (gdb) bt full
> > #0  terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
> > #1  0x0000555555740e5e in emacs_abort () at sysdep.c:2310
> > #2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300
> <kbd_buffer+256>) at keyboard.c:6140
> >         button = 0
> >         start_pos = XIL(0)
> >         is_double = false
> >         position = XIL(0x5555567fd423)
> >         start_pos_ptr = 0x7ffff1e414c0
> >         i = -493962752
>
> Please show the result of the following:
>
>   (gdb) frame 2
>   (gdb) p *event
>
> (This assumes that "frame 2 gets you to the frame in make_lispy_event
> above; if not adjust the frame number accordingly.)
>
> Thanks.
>

[-- Attachment #2: Type: text/html, Size: 2466 bytes --]

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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 17:48   ` समीर सिंह Sameer Singh
@ 2022-06-14 18:30     ` Eli Zaretskii
  2022-06-14 18:44       ` समीर सिंह Sameer Singh
  0 siblings, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2022-06-14 18:30 UTC (permalink / raw)
  To: समीर सिंह Sameer Singh
  Cc: 55970

> From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com>
> Date: Tue, 14 Jun 2022 23:18:42 +0530
> Cc: 55970@debbugs.gnu.org
> 
> Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:420
> 420     {
> (gdb) frame 2
> #2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300 <kbd_buffer+256>) at
> keyboard.c:6140
> 6140              emacs_abort ();
> (gdb) p *event
> $1 = {
>  kind = SCROLL_BAR_CLICK_EVENT,
>  part = scroll_bar_handle,
>  code = 0,
>  modifiers = 0,
>  x = make_fixnum(17531),
>  y = make_fixnum(1244637),
>  timestamp = 0,
>  frame_or_window = XIL(0x5555560794a5),
>  arg = XIL(0),
>  device = XIL(0x30)
> }

Thanks.  I think the problem is here:

  static void
  pgtk_send_scroll_bar_event (Lisp_Object window, enum scroll_bar_part part,
			      int portion, int whole, bool horizontal)
  {
    union buffered_input_event inev;

    EVENT_INIT (inev.ie);

    inev.ie.kind = (horizontal
		    ? HORIZONTAL_SCROLL_BAR_CLICK_EVENT
		    : SCROLL_BAR_CLICK_EVENT);
    inev.ie.frame_or_window = window;
    inev.ie.arg = Qnil;
    inev.ie.timestamp = 0;
    inev.ie.code = 0;
    inev.ie.part = part;
    inev.ie.x = make_fixnum (portion);
    inev.ie.y = make_fixnum (whole);
    inev.ie.modifiers = 0;

    evq_enqueue (&inev);
  }

This sets the modifiers to zero, which causes the abort.  Instead, I
suggest to do this:

    inev.ie.modifiers =
      part == scroll_bar_end_scroll ? up_modifier : down_modifier;

Can you try this?





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 18:30     ` Eli Zaretskii
@ 2022-06-14 18:44       ` समीर सिंह Sameer Singh
  2022-06-14 18:48         ` Eli Zaretskii
  0 siblings, 1 reply; 17+ messages in thread
From: समीर सिंह Sameer Singh @ 2022-06-14 18:44 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 55970

[-- Attachment #1: Type: text/plain, Size: 1851 bytes --]

It does not crash now!
Thank you.

On Wed, Jun 15, 2022 at 12:00 AM Eli Zaretskii <eliz@gnu.org> wrote:

> > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com>
> > Date: Tue, 14 Jun 2022 23:18:42 +0530
> > Cc: 55970@debbugs.gnu.org
> >
> > Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6,
> backtrace_limit=40) at emacs.c:420
> > 420     {
> > (gdb) frame 2
> > #2  0x000055555571ba26 in make_lispy_event (event=0x555555e25300
> <kbd_buffer+256>) at
> > keyboard.c:6140
> > 6140              emacs_abort ();
> > (gdb) p *event
> > $1 = {
> >  kind = SCROLL_BAR_CLICK_EVENT,
> >  part = scroll_bar_handle,
> >  code = 0,
> >  modifiers = 0,
> >  x = make_fixnum(17531),
> >  y = make_fixnum(1244637),
> >  timestamp = 0,
> >  frame_or_window = XIL(0x5555560794a5),
> >  arg = XIL(0),
> >  device = XIL(0x30)
> > }
>
> Thanks.  I think the problem is here:
>
>   static void
>   pgtk_send_scroll_bar_event (Lisp_Object window, enum scroll_bar_part
> part,
>                               int portion, int whole, bool horizontal)
>   {
>     union buffered_input_event inev;
>
>     EVENT_INIT (inev.ie);
>
>     inev.ie.kind = (horizontal
>                     ? HORIZONTAL_SCROLL_BAR_CLICK_EVENT
>                     : SCROLL_BAR_CLICK_EVENT);
>     inev.ie.frame_or_window = window;
>     inev.ie.arg = Qnil;
>     inev.ie.timestamp = 0;
>     inev.ie.code = 0;
>     inev.ie.part = part;
>     inev.ie.x = make_fixnum (portion);
>     inev.ie.y = make_fixnum (whole);
>     inev.ie.modifiers = 0;
>
>     evq_enqueue (&inev);
>   }
>
> This sets the modifiers to zero, which causes the abort.  Instead, I
> suggest to do this:
>
>     inev.ie.modifiers =
>       part == scroll_bar_end_scroll ? up_modifier : down_modifier;
>
> Can you try this?
>

[-- Attachment #2: Type: text/html, Size: 2614 bytes --]

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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 18:44       ` समीर सिंह Sameer Singh
@ 2022-06-14 18:48         ` Eli Zaretskii
  2022-06-15  0:59           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2022-06-14 18:48 UTC (permalink / raw)
  To: समीर सिंह Sameer Singh
  Cc: 55970

> From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com>
> Date: Wed, 15 Jun 2022 00:14:45 +0530
> Cc: 55970@debbugs.gnu.org
> 
> It does not crash now!

Thanks for testing, I will let it to Po Lu to decide whether that's
the proper fix in this case.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 14:08 bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags समीर सिंह Sameer Singh
  2022-06-14 17:44 ` Eli Zaretskii
@ 2022-06-15  0:56 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 17+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-06-15  0:56 UTC (permalink / raw)
  To: समीर सिंह Sameer Singh
  Cc: 55970

समीर सिंह Sameer Singh <lumarzeli30@gmail.com> writes:

> I don't know whether these two features are meant to be used together, but I still felt the need to report a potential bug.
>
> Recipe to reproduce:
> 1. './configure --with-pgtk --without-toolkit-scroll-bars --enable-checking=yes,glyphs --enable-check-lisp-object-type 'CFLAGS=-O0 -g3''
> 2. emacs -Q
> 3. Drag the scrollbar or click on the scroll area where the scrollbar is not present
> 4. emacs crashes
>
> I have attached the gdb output, if something is missing please tell me.
> Thank You.

I thought that was already fixed, in that you cannot use
--without-toolkit-scroll-bars on PGTK, since the code required to
support non-toolkit scroll bar events isn't present.

Is your configure by any chance out-of-date?





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-14 18:48         ` Eli Zaretskii
@ 2022-06-15  0:59           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-15  2:28             ` Eli Zaretskii
  2022-06-15 13:50             ` Robert Pluim
  0 siblings, 2 replies; 17+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-06-15  0:59 UTC (permalink / raw)
  To: Eli Zaretskii
  Cc: 55970,
	समीर सिंह Sameer Singh

Eli Zaretskii <eliz@gnu.org> writes:

> Thanks for testing, I will let it to Po Lu to decide whether that's
> the proper fix in this case.

Non-toolkit scroll bars use different kinds of events compared to
toolkit scroll bars.  PGTK only implements the latter kind, so turning
toolkit scroll bars off should trigger this piece of configure.ac:

  elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
    AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
  fi

Perhaps Sameer's configure script is out of date and needs to be
regenerated.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15  0:59           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-06-15  2:28             ` Eli Zaretskii
  2022-06-15  3:29               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-15 13:50             ` Robert Pluim
  1 sibling, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2022-06-15  2:28 UTC (permalink / raw)
  To: Po Lu; +Cc: 55970, lumarzeli30

> From: Po Lu <luangruo@yahoo.com>
> Cc: समीर सिंह Sameer Singh
>  <lumarzeli30@gmail.com>,  55970@debbugs.gnu.org
> Date: Wed, 15 Jun 2022 08:59:20 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > Thanks for testing, I will let it to Po Lu to decide whether that's
> > the proper fix in this case.
> 
> Non-toolkit scroll bars use different kinds of events compared to
> toolkit scroll bars.  PGTK only implements the latter kind, so turning
> toolkit scroll bars off should trigger this piece of configure.ac:
> 
>   elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
>     AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
>   fi
> 
> Perhaps Sameer's configure script is out of date and needs to be
> regenerated.

OK, but please explain how come the code in pgtk_send_scroll_bar_event
leaves the modifiers unset, and that is still OK, notwithstanding the
code in keyboard.c that expects either up or down modifier for any
mouse click event?  Isn't that a bug regardless?





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15  2:28             ` Eli Zaretskii
@ 2022-06-15  3:29               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-15  8:23                 ` समीर सिंह Sameer Singh
  2022-06-15 12:25                 ` Eli Zaretskii
  0 siblings, 2 replies; 17+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-06-15  3:29 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 55970, lumarzeli30

Eli Zaretskii <eliz@gnu.org> writes:

> OK, but please explain how come the code in pgtk_send_scroll_bar_event
> leaves the modifiers unset, and that is still OK, notwithstanding the
> code in keyboard.c that expects either up or down modifier for any
> mouse click event?  Isn't that a bug regardless?

The mouse click code that expects an up or down modifier is only used
for scroll bar events when USE_TOOLKIT_SCROLL_BARS isn't defined.  The
code actually used with toolkit scroll bars starts at line 6359 of
keyboard.c.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15  3:29               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-06-15  8:23                 ` समीर सिंह Sameer Singh
  2022-06-15 12:25                 ` Eli Zaretskii
  1 sibling, 0 replies; 17+ messages in thread
From: समीर सिंह Sameer Singh @ 2022-06-15  8:23 UTC (permalink / raw)
  To: Po Lu; +Cc: 55970, Eli Zaretskii

[-- Attachment #1: Type: text/plain, Size: 2357 bytes --]

>
> Non-toolkit scroll bars use different kinds of events compared to
> toolkit scroll bars.  PGTK only implements the latter kind, so turning
> toolkit scroll bars off should trigger this piece of configure.ac:
>
>   elif test "${window_system}" != "x11" && "${window_system}" != "none";
> then
>     AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your
> system)
>   fi
>
> Perhaps Sameer's configure script is out of date and needs to be
> regenerated.
>

I cloned a fresh copy and configured it with the same flags, but still
there was no error,
even though my configure.ac has the same lines.

AH_TEMPLATE(USE_TOOLKIT_SCROLL_BARS,
   [Define to 1 if we should use toolkit scroll bars.])dnl
USE_TOOLKIT_SCROLL_BARS=no
if test "${with_toolkit_scroll_bars}" != "no"; then
  if test "${USE_X_TOOLKIT}" != "none"; then
    if test "${USE_X_TOOLKIT}" = "MOTIF"; then
      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
      HAVE_XAW3D=no
      USE_TOOLKIT_SCROLL_BARS=yes
    elif test "${HAVE_XAW3D}" = "yes" || test "${USE_X_TOOLKIT}" = "LUCID";
then
      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
      USE_TOOLKIT_SCROLL_BARS=yes
    fi
  elif test "${HAVE_GTK}" = "yes"; then
    AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
    USE_TOOLKIT_SCROLL_BARS=yes
  elif test "${HAVE_NS}" = "yes"; then
    AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
    USE_TOOLKIT_SCROLL_BARS=yes
  elif test "${HAVE_W32}" = "yes"; then
    AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
    USE_TOOLKIT_SCROLL_BARS=yes
  elif test "${HAVE_BE_APP}" = "yes"; then
    AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
    USE_TOOLKIT_SCROLL_BARS=yes
  fi
elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
  AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
fi

On Wed, Jun 15, 2022 at 8:59 AM Po Lu <luangruo@yahoo.com> wrote:

> Eli Zaretskii <eliz@gnu.org> writes:
>
> > OK, but please explain how come the code in pgtk_send_scroll_bar_event
> > leaves the modifiers unset, and that is still OK, notwithstanding the
> > code in keyboard.c that expects either up or down modifier for any
> > mouse click event?  Isn't that a bug regardless?
>
> The mouse click code that expects an up or down modifier is only used
> for scroll bar events when USE_TOOLKIT_SCROLL_BARS isn't defined.  The
> code actually used with toolkit scroll bars starts at line 6359 of
> keyboard.c.
>

[-- Attachment #2: Type: text/html, Size: 3486 bytes --]

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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15  3:29               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-15  8:23                 ` समीर सिंह Sameer Singh
@ 2022-06-15 12:25                 ` Eli Zaretskii
  2022-06-15 13:14                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2022-06-15 12:25 UTC (permalink / raw)
  To: Po Lu; +Cc: 55970, lumarzeli30

> From: Po Lu <luangruo@yahoo.com>
> Cc: 55970@debbugs.gnu.org,  lumarzeli30@gmail.com
> Date: Wed, 15 Jun 2022 11:29:23 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > OK, but please explain how come the code in pgtk_send_scroll_bar_event
> > leaves the modifiers unset, and that is still OK, notwithstanding the
> > code in keyboard.c that expects either up or down modifier for any
> > mouse click event?  Isn't that a bug regardless?
> 
> The mouse click code that expects an up or down modifier is only used
> for scroll bar events when USE_TOOLKIT_SCROLL_BARS isn't defined.  The
> code actually used with toolkit scroll bars starts at line 6359 of
> keyboard.c.

Then how come the code which aborted got executed contrary to what you
say?  And given that it did, would it do any harm to install the fix I
proposed?

More importantly, does it really make sense to "fix" events in
keyboard.c, rather than generate them correctly in low-level
toolkit-specific code to begin with?  I mean this part:

	/* Always treat scroll bar events as clicks.  */
	event->modifiers |= click_modifier;
	event->modifiers &= ~up_modifier;

Why do we override the modifiers of the event, and why in keyboard.c
of all places?  Can we do this cleaner, or at least in
toolkit-specific code?





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15 12:25                 ` Eli Zaretskii
@ 2022-06-15 13:14                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 0 replies; 17+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-06-15 13:14 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 55970, lumarzeli30

Eli Zaretskii <eliz@gnu.org> writes:

> Then how come the code which aborted got executed contrary to what you
> say?

Because USE_TOOLKIT_SCROLL_BARS was not defined.  The reporter passed
`--without-toolkit-scroll-bars' to configure, which is not supported on
PGTK.

The configure script is supposed to prohibit that combination of
options, but somehow that did not happen.

> And given that it did, would it do any harm to install the fix I
> proposed?

Yes, since the events generated would also still be broken, but more
subtly.  USE_TOOLKIT_SCROLL_BARS should always be defined on window
systems other than X, since no other window system implements "native"
scroll bars.

> More importantly, does it really make sense to "fix" events in
> keyboard.c, rather than generate them correctly in low-level
> toolkit-specific code to begin with?  I mean this part:
>
> 	/* Always treat scroll bar events as clicks.  */
> 	event->modifiers |= click_modifier;
> 	event->modifiers &= ~up_modifier;
>
> Why do we override the modifiers of the event, and why in keyboard.c
> of all places?  Can we do this cleaner, or at least in
> toolkit-specific code?

I don't really understand that piece of code.  It seems wrong to me,
since toolkit scroll bar events should not have modifiers at all.

But it's probably there for a reason, which I will look into.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15  0:59           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-15  2:28             ` Eli Zaretskii
@ 2022-06-15 13:50             ` Robert Pluim
  2022-06-15 14:01               ` समीर सिंह Sameer Singh
  2022-06-16  0:53               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 2 replies; 17+ messages in thread
From: Robert Pluim @ 2022-06-15 13:50 UTC (permalink / raw)
  To: Po Lu
  Cc: 55970, Eli Zaretskii,
	समीर सिंह Sameer Singh

>>>>> On Wed, 15 Jun 2022 08:59:20 +0800, Po Lu <luangruo@yahoo.com> said:

    Po> Eli Zaretskii <eliz@gnu.org> writes:
    >> Thanks for testing, I will let it to Po Lu to decide whether that's
    >> the proper fix in this case.

    Po> Non-toolkit scroll bars use different kinds of events compared to
    Po> toolkit scroll bars.  PGTK only implements the latter kind, so turning
    Po> toolkit scroll bars off should trigger this piece of configure.ac:

    Po>   elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
    Po>     AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
    Po>   fi

    Po> Perhaps Sameer's configure script is out of date and needs to be
    Po> regenerated.

configure is written in sh, not in C, so you need

diff --git a/configure.ac b/configure.ac
index 5b86e90925..c91b7de322 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3436,7 +3436,7 @@ AC_DEFUN
     AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
     USE_TOOLKIT_SCROLL_BARS=yes
   fi
-elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
+elif test "${window_system}" != "x11" && test "${window_system}" != "none"; then
   AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
 fi
 

(or use -a to avoid repeating the 'test')

Robert
-- 





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15 13:50             ` Robert Pluim
@ 2022-06-15 14:01               ` समीर सिंह Sameer Singh
  2022-06-16  0:53               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 17+ messages in thread
From: समीर सिंह Sameer Singh @ 2022-06-15 14:01 UTC (permalink / raw)
  To: Robert Pluim; +Cc: Po Lu, 55970, Eli Zaretskii

[-- Attachment #1: Type: text/plain, Size: 2038 bytes --]

configure is written in sh, not in C, so you need

diff --git a/configure.ac b/configure.ac
index 5b86e90925..c91b7de322 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3436,7 +3436,7 @@ AC_DEFUN
     AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
     USE_TOOLKIT_SCROLL_BARS=yes
   fi
-elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
+elif test "${window_system}" != "x11" && test "${window_system}" !=
"none"; then
   AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
 fi


yes, adding "test" here, correctly produces an error.

On Wed, Jun 15, 2022 at 7:20 PM Robert Pluim <rpluim@gmail.com> wrote:

> >>>>> On Wed, 15 Jun 2022 08:59:20 +0800, Po Lu <luangruo@yahoo.com> said:
>
>     Po> Eli Zaretskii <eliz@gnu.org> writes:
>     >> Thanks for testing, I will let it to Po Lu to decide whether that's
>     >> the proper fix in this case.
>
>     Po> Non-toolkit scroll bars use different kinds of events compared to
>     Po> toolkit scroll bars.  PGTK only implements the latter kind, so
> turning
>     Po> toolkit scroll bars off should trigger this piece of configure.ac:
>
>     Po>   elif test "${window_system}" != "x11" && "${window_system}" !=
> "none"; then
>     Po>     AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for
> your system)
>     Po>   fi
>
>     Po> Perhaps Sameer's configure script is out of date and needs to be
>     Po> regenerated.
>
> configure is written in sh, not in C, so you need
>
> diff --git a/configure.ac b/configure.ac
> index 5b86e90925..c91b7de322 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -3436,7 +3436,7 @@ AC_DEFUN
>      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
>      USE_TOOLKIT_SCROLL_BARS=yes
>    fi
> -elif test "${window_system}" != "x11" && "${window_system}" != "none";
> then
> +elif test "${window_system}" != "x11" && test "${window_system}" !=
> "none"; then
>    AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your
> system)
>  fi
>
>
> (or use -a to avoid repeating the 'test')
>
> Robert
> --
>

[-- Attachment #2: Type: text/html, Size: 3734 bytes --]

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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-15 13:50             ` Robert Pluim
  2022-06-15 14:01               ` समीर सिंह Sameer Singh
@ 2022-06-16  0:53               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-06-16  7:39                 ` Robert Pluim
  1 sibling, 1 reply; 17+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-06-16  0:53 UTC (permalink / raw)
  To: Robert Pluim
  Cc: 55970, Eli Zaretskii,
	समीर सिंह Sameer Singh

Robert Pluim <rpluim@gmail.com> writes:

> configure is written in sh, not in C, so you need
>
> diff --git a/configure.ac b/configure.ac
> index 5b86e90925..c91b7de322 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -3436,7 +3436,7 @@ AC_DEFUN
>      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
>      USE_TOOLKIT_SCROLL_BARS=yes
>    fi
> -elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
> +elif test "${window_system}" != "x11" && test "${window_system}" != "none"; then
>    AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
>  fi
>  
>
> (or use -a to avoid repeating the 'test')
>
> Robert

Ah, right, that should've been obvious.

Feel free to install that change and close this bug.





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

* bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
  2022-06-16  0:53               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-06-16  7:39                 ` Robert Pluim
  0 siblings, 0 replies; 17+ messages in thread
From: Robert Pluim @ 2022-06-16  7:39 UTC (permalink / raw)
  To: Po Lu
  Cc: 55970, Eli Zaretskii,
	समीर सिंह Sameer Singh

tags 55970 fixed
close 55970 29.1
quit

>>>>> On Thu, 16 Jun 2022 08:53:38 +0800, Po Lu <luangruo@yahoo.com> said:

    Po> Robert Pluim <rpluim@gmail.com> writes:
    >> configure is written in sh, not in C, so you need
    >> 
    >> diff --git a/configure.ac b/configure.ac
    >> index 5b86e90925..c91b7de322 100644
    >> --- a/configure.ac
    >> +++ b/configure.ac
    >> @@ -3436,7 +3436,7 @@ AC_DEFUN
    >> AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
    >> USE_TOOLKIT_SCROLL_BARS=yes
    >> fi
    >> -elif test "${window_system}" != "x11" && "${window_system}" != "none"; then
    >> +elif test "${window_system}" != "x11" && test "${window_system}" != "none"; then
    >> AC_MSG_ERROR(Non-toolkit scroll bars are not implemented for your system)
    >> fi
    >> 
    >> 
    >> (or use -a to avoid repeating the 'test')
    >> 
    >> Robert

    Po> Ah, right, that should've been obvious.

The mix of sh, m4, C, make, awk etc in configure makes such things
decidedly non-obvious: too many language context switches

    Po> Feel free to install that change and close this bug.

Closing.
Committed as 1054d38bc7





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

end of thread, other threads:[~2022-06-16  7:39 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-14 14:08 bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags समीर सिंह Sameer Singh
2022-06-14 17:44 ` Eli Zaretskii
2022-06-14 17:48   ` समीर सिंह Sameer Singh
2022-06-14 18:30     ` Eli Zaretskii
2022-06-14 18:44       ` समीर सिंह Sameer Singh
2022-06-14 18:48         ` Eli Zaretskii
2022-06-15  0:59           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-15  2:28             ` Eli Zaretskii
2022-06-15  3:29               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-15  8:23                 ` समीर सिंह Sameer Singh
2022-06-15 12:25                 ` Eli Zaretskii
2022-06-15 13:14                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-15 13:50             ` Robert Pluim
2022-06-15 14:01               ` समीर सिंह Sameer Singh
2022-06-16  0:53               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-16  7:39                 ` Robert Pluim
2022-06-15  0:56 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors

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