X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Karl Otness <karl@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sat, 17 Dec 2022 03:40:01 +0000 Resent-Message-ID: <handler.60144.B.16712483944643 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 60144 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.16712483944643 (code B ref -1); Sat, 17 Dec 2022 03:40:01 +0000 Received: (at submit) by debbugs.gnu.org; 17 Dec 2022 03:39:54 +0000 Received: from localhost ([127.0.0.1]:53388 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6O3F-0001Cp-Bx for submit <at> debbugs.gnu.org; Fri, 16 Dec 2022 22:39:53 -0500 Received: from lists.gnu.org ([209.51.188.17]:52848) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1p6O3D-0001Cj-W5 for submit <at> debbugs.gnu.org; Fri, 16 Dec 2022 22:39:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1p6O3C-00030x-EJ for bug-gnu-emacs@HIDDEN; Fri, 16 Dec 2022 22:39:51 -0500 Received: from mail-qt1-x82d.google.com ([2607:f8b0:4864:20::82d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1p6O39-0004td-OO for bug-gnu-emacs@HIDDEN; Fri, 16 Dec 2022 22:39:49 -0500 Received: by mail-qt1-x82d.google.com with SMTP id c7so4285539qtw.8 for <bug-gnu-emacs@HIDDEN>; Fri, 16 Dec 2022 19:39:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=karlotness.com; s=google; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=YhxAER2qoCCkvL7EUKz0FDdJ9BoF7rUY0nvKHejjiQo=; b=sZjcliH2W29lv3CmGtm54vePRid5+kVdC9QubD1cTbMO81jDzbfjfczw5tuKTw7mTb rHoCG2fjHbA+JHpPU+b6x6Jqx09IGanGpV4uRjHBSa8plkMbodj8a0SJy/5fcY4ECDMb wqFw/jHgyKpsLxA9MF1tfLCTOwE3L/Q4op2X5W2FQP5w+GLooe38pRxJabHR1B1bOVLq H+VPnEnFSvkWiDEG4ckUa2X8Ty8/doTFt4vEukNlChyImFvHYfH7VA+unpKT99iI8V89 uyAZhCVgG94aSuY13vdrnVvqok/Hu8OxYflCTRlJ2xuMmkI6CyhsBi1vIIgQf2ybegRt T6vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=YhxAER2qoCCkvL7EUKz0FDdJ9BoF7rUY0nvKHejjiQo=; b=Oa6F+NWAIW4q/QFwH4nHvMOK7sW4dzgfhijDeCXKSq4HA/JiwDBqPNZRkSZ25dkByr hZAsGoN2aPTe+LjSluipCOWLfKwRJAyLQxfc1MfQEjrQkPZxlCg8l4mnLOLROm+EXp73 5G0QL9LD3pTK7KRL81w3BiNw1VcvEU1+wfN9BygnYcGsQjgZkEMjnhuEyAeFwo7hZmOx X/sU/A8ZZgskiluoFT1Y7erIqCXmZ2XX+APX620Rez/pUcExTDB8w5Xh2fl3r3lvPF+8 /qzmLnuwZuOKJtrjEkLElx3pxIPzWnbxlBbpOpMyeNrvgzrJSwOMDAEkS6H7/IqzXX5J hKrw== X-Gm-Message-State: ANoB5pm/YkcFc3dJnMn/dynu4KecHUwCikUCUrVXKTCXnDMu6d8vdyxJ 5IHZ9SIrPaXSSCLvD7EVhaFc2riv79TjC4DG X-Google-Smtp-Source: AA0mqf4x2qedWI41pnvflMaefMPzuFLs3dw/4E1/x8OQIxlPfmrrFTwqg3Sf2E9Dn5PJVOXANpiRjA== X-Received: by 2002:ac8:5f93:0:b0:3a7:ff9c:3f92 with SMTP id j19-20020ac85f93000000b003a7ff9c3f92mr53140694qta.22.1671248384778; Fri, 16 Dec 2022 19:39:44 -0800 (PST) Received: from mail-yw1-f177.google.com (mail-yw1-f177.google.com. [209.85.128.177]) by smtp.gmail.com with ESMTPSA id e21-20020ac845d5000000b003431446588fsm2419852qto.5.2022.12.16.19.39.44 for <bug-gnu-emacs@HIDDEN> (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 16 Dec 2022 19:39:44 -0800 (PST) Received: by mail-yw1-f177.google.com with SMTP id 00721157ae682-3e45d25de97so58716797b3.6 for <bug-gnu-emacs@HIDDEN>; Fri, 16 Dec 2022 19:39:44 -0800 (PST) X-Received: by 2002:a81:408:0:b0:3d1:e5f8:ebef with SMTP id 8-20020a810408000000b003d1e5f8ebefmr1080676ywe.185.1671248383714; Fri, 16 Dec 2022 19:39:43 -0800 (PST) MIME-Version: 1.0 From: Karl Otness <karl@HIDDEN> Date: Fri, 16 Dec 2022 22:39:27 -0500 X-Gmail-Original-Message-ID: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> Message-ID: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> Content-Type: text/plain; charset="UTF-8" Received-SPF: pass client-ip=2607:f8b0:4864:20::82d; envelope-from=karl@HIDDEN; helo=mail-qt1-x82d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) Hello, I have been having issues with unpredictable crashes running Emacs master with PGTK on Wayland. This looks somewhat similar to bug#59452. Like that bug, it seems to be caused by an Emacs signal happening in a GTK callback. It works its way to get_char_property_and_overlay (textprop.c:644), signals, which longjmps out of the GLib/GObject signal handling (g_signal_emit) leading to memory corruption and a segfault. Backtraces below. The segfault happens after continuing. Seems like after continuing it reenters g_signal_emit and follows a corrupted pointer in a linked list of signals to dispatch. Unfortunately I don't have a good recipe for reliably reproducing it. I've only seen it happen in buffers with eglot enabled (so far C++ buffers) when clicking around, typing, messing with the eglot menu, etc. This is for an Emacs from recent master. Version: 30.0.50 Commit: 1568123196cd8b57ed64e284b7deb058026be713 Configured using: 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --with-pgtk --with-native-compilation --without-sound --with-harfbuzz --without-m17n-flt --without-xft --with-libotf --with-cairo --with-modules --without-gconf --without-gsettings --with-gameuser=:games --without-imagemagick --with-dumping=pdumper --with-sqlite3 --with-json --with-tree-sitter '--program-transform-name=s/^ctags$/ctags.emacs/' 'CFLAGS=-g -ggdb -O3 -pipe -fno-plt -fstack-protector-all -fstack-clash-protection -fcf-protection=full -fPIE -D_FORTIFY_SOURCE=3 -march=native -mtune=native' 'LDFLAGS=-pie -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now,-z,noexecstack'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB Let me know if there's anything else I can gather that might be helpful. Thanks, Karl Here's the backtrace for the signal out of the event handling. From GDB with a breakpoint on Fsignal and a condition '$_any_caller_is("g_signal_emit", 20)' > #0 Fsignal (error_symbol=error_symbol@entry=0x2f40, data=0x55bed53eeac3) at eval.c:1681 > #1 0x000055bece1213bf in xsignal (data=<optimized out>, error_symbol=0x2f40) at emacs/src/lisp.h:4558 > #2 xsignal1 (error_symbol=error_symbol@entry=0x2f40, arg=arg@entry=0x82) at eval.c:1878 > #3 0x000055bece1253e3 in get_char_property_and_overlay (position=0x82, prop=0x5a90, object=0x7f105451a265, overlay=0x0) at textprop.c:644 > #4 0x000055bece156110 in string_buffer_position_lim (string=string@entry=0x55bed52e8b24, from=from@entry=32, to=to@entry=1032, back_p=back_p@entry=false) at xdisp.c:6246 > #5 0x000055bece1561fa in string_buffer_position (string=0x55bed52e8b24, around_charpos=32) at xdisp.c:6284 > #6 0x000055bece1aaddb in note_mouse_highlight (f=f@entry=0x55bed1a839e8, x=<optimized out>, y=<optimized out>) at xdisp.c:35339 > #7 0x000055bece4039ac in note_mouse_movement (event=0x55bed1ce6030, frame=0x55bed1a839e8) at pgtkterm.c:5821 > #8 motion_notify_event (widget=widget@entry=0x55bed2024130, event=0x55bed1ce6030, user_data=<optimized out>) at pgtkterm.c:5905 > #9 0x00007f105c684fd8 in _gtk_marshal_BOOLEAN__BOXED (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=<optimized out>, param_values=0x7ffebc5ae4e0, invocation_hint=<optimized out>, marshal_data=<optimized out>) > at gtk/gtkmarshalers.c:84 > #10 0x00007f105c095210 in g_closure_invoke (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=2, param_values=0x7ffebc5ae4e0, invocation_hint=0x7ffebc5ae460) at ../glib/gobject/gclosure.c:832 > #11 0x00007f105c0c2ea8 in signal_emit_unlocked_R.isra.0 > (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x55bed2024130, emission_return=emission_return@entry=0x7ffebc5ae5f0, instance_and_params=instance_and_params@entry=0x7ffebc5ae4e0) > at ../glib/gobject/gsignal.c:3796 > #12 0x00007f105c0b2980 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffebc5ae6a0) at ../glib/gobject/gsignal.c:3559 > #13 0x00007f105c0b3204 in g_signal_emit (instance=instance@entry=0x55bed2024130, signal_id=<optimized out>, detail=detail@entry=0) at ../glib/gobject/gsignal.c:3606 > #14 0x00007f105c9447f5 in gtk_widget_event_internal.part.0.lto_priv.0 (widget=0x55bed2024130, event=0x55bed1ce6030) at ../gtk/gtk/gtkwidget.c:7812 > #15 0x00007f105c7e20db in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x55bed2024130) at ../gtk/gtk/gtkmain.c:2588 > #16 propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030, captured=captured@entry=0, topmost=topmost@entry=0x0) at ../gtk/gtk/gtkmain.c:2691 > #17 0x00007f105c7e2212 in gtk_propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030) at ../gtk/gtk/gtkmain.c:2725 > #18 0x00007f105c7e2fbb in gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1921 > #19 gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1691 > #20 0x00007f105c542cd3 in _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:73 > #21 _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:67 > #22 0x00007f105c576d48 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at ../gtk/gdk/wayland/gdkeventsource.c:124 > #23 0x00007f105bf9787b in g_main_dispatch (context=0x55bed0cc5940) at ../glib/glib/gmain.c:3444 > #24 g_main_context_dispatch (context=0x55bed0cc5940) at ../glib/glib/gmain.c:4162 > #25 0x000055bece3feea9 in pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7ffebc5ae9f0) at pgtkterm.c:3839 > #26 pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7ffebc5ae9f0) at pgtkterm.c:3818 > #27 0x000055bece251ae1 in gobble_input () at keyboard.c:7417 > #28 0x000055bece254901 in handle_async_input () at keyboard.c:7648 > #29 process_pending_signals () at keyboard.c:7662 > #30 unblock_input_to (level=0) at keyboard.c:7677 > #31 unblock_input_to (level=<optimized out>) at keyboard.c:7671 > #32 unblock_input () at keyboard.c:7696 > #33 timer_check () at keyboard.c:4742 > #34 0x000055bece254bcd in readable_events (flags=1) at keyboard.c:3524 > #35 0x000055bece25a624 in get_input_pending (flags=1) at keyboard.c:7367 > #36 detect_input_pending_run_timers (do_display=do_display@entry=true) at keyboard.c:10897 > #37 0x000055bece38962f in wait_reading_process_output > (time_limit=time_limit@entry=0, nsecs=nsecs@entry=0, read_kbd=read_kbd@entry=-1, do_display=<optimized out>, wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0, just_wait_proc=<optimized out>) at process.c:5779 > #38 0x000055bece25271c in kbd_buffer_get_event (end_time=0x0, used_mouse_menu=0x7ffebc5af64b, kbp=<synthetic pointer>) at keyboard.c:4003 > #39 read_event_from_main_queue (used_mouse_menu=0x7ffebc5af64b, local_getcjmp=0x7ffebc5af3c0, end_time=0x0) at keyboard.c:2270 > #40 read_decoded_event_from_main_queue (end_time=0x0, local_getcjmp=0x7ffebc5af3c0, prev_event=0x0, used_mouse_menu=0x7ffebc5af64b) at keyboard.c:2334 > #41 0x000055bece25b904 in read_char (commandflag=1, map=0x55bed51362e3, prev_event=0x0, used_mouse_menu=0x7ffebc5af64b, end_time=0x0) at keyboard.c:2964 > #42 0x000055bece2600b7 in read_key_sequence (keybuf=<optimized out>, prevent_redisplay=false, fix_current_buffer=<optimized out>, can_return_switch_frame=<optimized out>, dont_downcase_last=<optimized out>, prompt=<optimized out>) > at keyboard.c:10074 > #43 0x000055bece262141 in command_loop_1 () at keyboard.c:1376 > #44 0x000055bece3055bf in internal_condition_case (bfun=bfun@entry=0x55bece261f70 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x55bece248c70 <cmd_error>) at eval.c:1474 > #45 0x000055bece24682f in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1125 > #46 0x000055bece3054e5 in internal_catch (tag=tag@entry=0xfb10, func=func@entry=0x55bece2467f0 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197 > #47 0x000055bece2467bb in command_loop () at keyboard.c:1103 > #48 0x000055bece24ee1d in recursive_edit_1 () at keyboard.c:712 > #49 0x000055bece24f269 in Frecursive_edit () at keyboard.c:795 > #50 0x000055bece128b15 in main (argc=<optimized out>, argv=0x7ffebc5afc88) at emacs.c:2529 and the stack trace after the longjmp (unwinds all the way to internal_condition_case): > #0 0x000055bece305577 in internal_condition_case > (bfun=bfun@entry=0x55bece261f70 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x55bece248c70 <cmd_error>) at eval.c:1465 > #1 0x000055bece24682f in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1125 > #2 0x000055bece3054e5 in internal_catch > (tag=tag@entry=0xfb10, func=func@entry=0x55bece2467f0 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197 > #3 0x000055bece2467bb in command_loop () at keyboard.c:1103 > #4 0x000055bece24ee1d in recursive_edit_1 () at keyboard.c:712 > #5 0x000055bece24f269 in Frecursive_edit () at keyboard.c:795 > #6 0x000055bece128b15 in main (argc=<optimized out>, argv=0x7ffebc5afc88) at emacs.c:2529
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Karl Otness <karl@HIDDEN> Subject: bug#60144: Acknowledgement (30.0.50; PGTK Emacs crashes after signal) Message-ID: <handler.60144.B.16712483944643.ack <at> debbugs.gnu.org> References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> X-Gnu-PR-Message: ack 60144 X-Gnu-PR-Package: emacs Reply-To: 60144 <at> debbugs.gnu.org Date: Sat, 17 Dec 2022 03:40:01 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 60144 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 60144: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D60144 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Po Lu <luangruo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 02:10:02 +0000 Resent-Message-ID: <handler.60144.B60144.167132935927812 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Karl Otness <karl@HIDDEN> Cc: 60144 <at> debbugs.gnu.org Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167132935927812 (code B ref 60144); Sun, 18 Dec 2022 02:10:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 02:09:19 +0000 Received: from localhost ([127.0.0.1]:59256 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6j79-0007EW-FB for submit <at> debbugs.gnu.org; Sat, 17 Dec 2022 21:09:19 -0500 Received: from sonic303-20.consmr.mail.ne1.yahoo.com ([66.163.188.146]:37696) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1p6j76-0007EQ-8Z for 60144 <at> debbugs.gnu.org; Sat, 17 Dec 2022 21:09:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671329347; bh=QvHoVfqJo/8+TVQJB0Q+Zo4bXOXK2W7Xz9etfMB9DZ4=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=RLtMNSjQkQWcTiF/IM8LAO6cnt+lML8QEGvijFErqJK4KMJDXDnBq3DJzIoJPsK7YjBNtU4Z+PRy9WeCkM+k9Bhr7UCZY0/NGC1eGQTNG9wXJ1U8JftTXIGp4uUjJaNyZoA1QyBTjNEWLQB1HboVzfHEA+zD92hCPb6FAwJWqbThc8HX+MiLjsrWr3Ic4vpo9jHlRUNWpz+Od8hw61RZqXv9H2ttAXhGcL2vTWk826vmubcBjo8IVxXYq0vB4FSW+VhjOvaXSReXGt+BGP2QE3fFXyA1Rm7LDRibqHqRTQnbMyJkhasU5yLee9lQ86BVzaW3FqTd8LTmG4CCQ1KaTQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671329347; bh=t4LWrWla8t98/gS4TQlRlKEbud/rRCvACwON8A6MiRw=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=uLPI18PAV+R8Rk9y9jOQVICz35rirPM/f7NAckWtAyx+QF6YlP0fBGJIWiekenjV3Gkm3506GR0vy67imWf23RGM8ocumXDiwoXCWLabSLiDzqPHbYQlNtRIbl9D5pPPOGXIGBI9PECLsIGh5/QHs6FRqfkMXZmjP5IGfjWJv1hRTaiG5MFyWBOXc0B3JC+MBKhLHRO3AEJYqKFC1psKez2D+39SdcrzFqmVh9K2+ebrdcro2yhFgU4EmJV7qLL5nPhMgVYgQ/lIBBIRuFRnQMARMwaOI614jorB/mGUjkildiG/dGQvKfsrZ0lbHKoRvnA3RgBi93oonQ4EltcjVA== X-YMail-OSG: 1L5fBBMVM1k_UbH2IMAHkVlNSFPG5l7GRgFfiyG2LJ6Zcw0.haYrJRDEzCVIlKt 71BUsMjENdnwdj1U7lu6wOy7JQDOBvsOoHqgMeKkkcpTgKv7GTidUiaAPlbBaEHH55b0RoM2lxaJ 8O0RaTEgcR6UmZ5tGDlHcqgAyiBVtAy57D72oULpsX901YD9K_3fWofQp3RmZPNCBv4X74Yf6Q4Z 3zzg.sZFVyMLkHnzlDC92.C4KI_9rIk1OIArX3PlkgEdrTrfEC2y2_Dcy37dUdJFQYfkMqkY2ZSe fIyr.O8XrRR97AjgpzmtTvP5WbyYllfoAVznmIiZo76OiMJct6DHS7ZuNeCNWQl.5KFqc9VvpXyW 5xObykAS7rV.541FcOzHXdGpOe9UCs6Ci0.S55.s3jms3p4zn8CGHpGNRDOaIQPcn6FuXxcM8h3F JzKM.9JH0vajo57F2SVOQHchNxy7al4Japql4JjUen_IrX6sgHiKOIeiz_c.V7ZlJxrcCXYm9pHM E0pp96hIxKMhbyC2hzfx6gZvF1sdfrcvFL6UNJSnpcw02uFc_cnt3jMQk1rjOePYT.b.QHtRrTrK pubYNdQc9yYaahvkS6jxNfpPLoCstby0Tojoc.6pDlJPvSGrvRus1_PHcRa4a2rqG9B7ooBb3J9J 4aCkXkrJ7Lj_9KpGlC6FKOzdZFkf5Vx8ClcHtlLH3fEES9cTAlD.UuJ1IVwfu1fmSQyPCX9IzbI4 28_Igvyj_nAt2aA2Q5B1E0BPVZPpcK2sTe6H_pEAgowu3M0fxGe4PhbLnsjx3EijrA4wvqzQanxx h7NNixNch8NxornR4j3OUWrEQDyOLwX2R6Ki_o74D7nC0eBxeu8R1MDeFI9LURKK1sUJnvl8T2z_ ghgkL80iskga8saLtL.dlDjiovbN_sye5JgHE26XStL15zmGmPi8CMB5vvF89jzoyW9J6wjugI_T PF6.M_y2F2Axc6OaeQHlX8MxVhBfzmLAvKUMTJpl_gAhoMJHFW4.KA1Z_7eDV.aYVrvUZErAD5dI lnptoOJNF9LCmUoFBQsOrLbymaN.MR_dXSL16x09.f0iCloPthruQTt71RwqZuaG2Al7XlnOOAu1 YG8kPcAsu9.i0rhnZk3bCniutdxUFnaxfpEizMkrn78XBVZvXvvUiuUp40UfujPFGbo913t5XUYD qGnq74N0Lt9N7QN8RVE.eLwYkvHoZeCLCfHIlBgxBOqvp46hZpSnBIkt0izTdJBz1ov5H7vMWkps t8OilxrFWZAfhHenbXg6X3ivCf.vWliKCJxn.YBAuaZbwmTjNprjgv22liT5iLYuIK6BAe0OXes8 EmMu94lRDl5k2Va9i4EZxMdR9DKpt.ZvpaUjPnTqsgxkkVa7AuWKTZebdvzO.RpnRk8Ei2P_sHhQ woIODqXOmifO3MVnj.H1W.XvPYT7Jjb4tpg95netkXSTfdvpXGHbx7gw.9lnVWNWrQY7rfaAPqA1 fFKRaesk5Fdzj.Ho2491pM6n_ee1ETxg88nJXz5JlFJmwd9Vc.VXy.VY2jGVjoO7VyLH70IkhBLa r8aAkW_Y6oe_MRmBCbJgIfhwEdkWXfbG1cpMB8HxCeZ11pmb31uyjAYjUJLs1SM93116UDufgFFS Vzm4C7Msvu1YZg7yemTBPKwQX5jiBwtA0UyKX_m8X3G__DoP_t180OnpAskxPLDRlDGiCAhuxMwj WaXMi6iI.qrkqG7q2M9m_ZldLcHNA9BLJxdjmN1bt3gw.eEoD_R8VPugfLynVFBxyZaJr2mtblne I7Xa.q0kt57EW.Vbz0eNHxR6cyGrj2O9K6ckjudtLALM2xDcQvebUyQHT_KXw_m6Yt8gQAQHDB2u ptfdfQcy2Rmf27RI.y4NyBTfhnWruqStOiNBa8VguuJN6YJgpvxF7lInMzZ62iYjqEd6nC.n5oO. zr37LZnPhlCsJn9ajOMhNqzYCsr9GkHHi1klHm9dYHNVEF2caII4I2.PGoeCHxwoQ.eP0Qmxp7It hQmi5qXYrjoDAu9afgP.f56G27mkIiCenVd_MhKn4ExHj3pYsuFAqlQCkyHXPqVZAbYWM15h6OLT jAHJSA5FGZAYbftvABREJr_35Uyf8VisDZ_Are1c5WdZO0.U9PQuQcbVowv3fMY9RQKuAg7ueswm QPaperXVDTl3cUlh7CI1UNQaJHDkRMnfq9GXzYPJfuAW.1lGYvTsT1.UT3_Wruq5p4iR6SEBj3dF awH3AXwFjxeSgXglZFccOxKYGeTrmjrqOb4lwKsOu1YQ1tTnzTZBpBKTptbfd.OOJ X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic303.consmr.mail.ne1.yahoo.com with HTTP; Sun, 18 Dec 2022 02:09:07 +0000 Received: by hermes--production-sg3-b666c6484-p5z8r (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 904ab6e67e9a388060da983e0f66e520; Sun, 18 Dec 2022 02:09:05 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> In-Reply-To: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> (Karl Otness's message of "Fri, 16 Dec 2022 22:39:27 -0500") References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> Date: Sun, 18 Dec 2022 10:08:59 +0800 Message-ID: <87edsxfop0.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 3430 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Karl Otness <karl@HIDDEN> writes: >> #0 Fsignal (error_symbol=error_symbol@entry=0x2f40, data=0x55bed53eeac3) at eval.c:1681 >> #1 0x000055bece1213bf in xsignal (data=<optimized out>, error_symbol=0x2f40) at emacs/src/lisp.h:4558 >> #2 xsignal1 (error_symbol=error_symbol@entry=0x2f40, arg=arg@entry=0x82) at eval.c:1878 >> #3 0x000055bece1253e3 in get_char_property_and_overlay (position=0x82, prop=0x5a90, object=0x7f105451a265, overlay=0x0) at textprop.c:644 >> #4 0x000055bece156110 in string_buffer_position_lim (string=string@entry=0x55bed52e8b24, from=from@entry=32, to=to@entry=1032, back_p=back_p@entry=false) at xdisp.c:6246 >> #5 0x000055bece1561fa in string_buffer_position (string=0x55bed52e8b24, around_charpos=32) at xdisp.c:6284 >> #6 0x000055bece1aaddb in note_mouse_highlight (f=f@entry=0x55bed1a839e8, x=<optimized out>, y=<optimized out>) at xdisp.c:35339 >> #7 0x000055bece4039ac in note_mouse_movement (event=0x55bed1ce6030, frame=0x55bed1a839e8) at pgtkterm.c:5821 >> #8 motion_notify_event (widget=widget@entry=0x55bed2024130, event=0x55bed1ce6030, user_data=<optimized out>) at pgtkterm.c:5905 >> #9 0x00007f105c684fd8 in _gtk_marshal_BOOLEAN__BOXED (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=<optimized out>, param_values=0x7ffebc5ae4e0, invocation_hint=<optimized out>, marshal_data=<optimized out>) >> at gtk/gtkmarshalers.c:84 >> #10 0x00007f105c095210 in g_closure_invoke (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=2, param_values=0x7ffebc5ae4e0, invocation_hint=0x7ffebc5ae460) at ../glib/gobject/gclosure.c:832 >> #11 0x00007f105c0c2ea8 in signal_emit_unlocked_R.isra.0 >> (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x55bed2024130, emission_return=emission_return@entry=0x7ffebc5ae5f0, instance_and_params=instance_and_params@entry=0x7ffebc5ae4e0) >> at ../glib/gobject/gsignal.c:3796 >> #12 0x00007f105c0b2980 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffebc5ae6a0) at ../glib/gobject/gsignal.c:3559 >> #13 0x00007f105c0b3204 in g_signal_emit (instance=instance@entry=0x55bed2024130, signal_id=<optimized out>, detail=detail@entry=0) at ../glib/gobject/gsignal.c:3606 >> #14 0x00007f105c9447f5 in gtk_widget_event_internal.part.0.lto_priv.0 (widget=0x55bed2024130, event=0x55bed1ce6030) at ../gtk/gtk/gtkwidget.c:7812 >> #15 0x00007f105c7e20db in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x55bed2024130) at ../gtk/gtk/gtkmain.c:2588 >> #16 propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030, captured=captured@entry=0, topmost=topmost@entry=0x0) at ../gtk/gtk/gtkmain.c:2691 >> #17 0x00007f105c7e2212 in gtk_propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030) at ../gtk/gtk/gtkmain.c:2725 >> #18 0x00007f105c7e2fbb in gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1921 >> #19 gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1691 >> #20 0x00007f105c542cd3 in _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:73 >> #21 _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:67 Thanks. This sounds awfully like another bug that was fixed last month. Would someone please take a look at this? note_mouse_highlight should never signal.
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 05:46:02 +0000 Resent-Message-ID: <handler.60144.B60144.16713423603987 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Po Lu <luangruo@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.16713423603987 (code B ref 60144); Sun, 18 Dec 2022 05:46:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 05:46:00 +0000 Received: from localhost ([127.0.0.1]:60100 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6mUq-00012F-1p for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 00:46:00 -0500 Received: from eggs.gnu.org ([209.51.188.92]:48798) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1p6mUm-000127-Lw for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 00:45:58 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6mUh-0004EL-0a; Sun, 18 Dec 2022 00:45:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=hcHmJ8nH0c8oiP1wxECtO1sGmRZr9yvZ1rhj/t86Qeo=; b=OqPzVi11DlOe 6mLfUfvdXmUGOiynful5b7dkavanDTqvIyZeHEsnUgUMmDHTDoN6fMQkpXkz9GNIJL/uqad84806f C2IrzB4APXk8O63CMC2jq0pdz3BlObvk4wQxOohR/6ss7NoRVHOVkou68nR/TDmcysJ9oS78Og665 QsPzdCo2rKON0junBgeJJwrH2K5H9Qbrpi0srmZWKsVhr82+d4kpLiHsFPGl178OQ9E0G861q8dHj CN+oAe3yW9R85SKJMZ05Oa5vUHxwQ81mwPFx4BbCb/b+vYDTRkEBOBH9fIxaDwDy7iDDT4Ph+YUc4 95jMwup/mDjPAypf27NxSA==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6mUf-00008O-Fq; Sun, 18 Dec 2022 00:45:50 -0500 Date: Sun, 18 Dec 2022 07:45:56 +0200 Message-Id: <83359dgt7v.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87edsxfop0.fsf@HIDDEN> (bug-gnu-emacs@HIDDEN) References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: 60144 <at> debbugs.gnu.org > Date: Sun, 18 Dec 2022 10:08:59 +0800 > From: Po Lu via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > Karl Otness <karl@HIDDEN> writes: > > >> #0 Fsignal (error_symbol=error_symbol@entry=0x2f40, data=0x55bed53eeac3) at eval.c:1681 > >> #1 0x000055bece1213bf in xsignal (data=<optimized out>, error_symbol=0x2f40) at emacs/src/lisp.h:4558 > >> #2 xsignal1 (error_symbol=error_symbol@entry=0x2f40, arg=arg@entry=0x82) at eval.c:1878 > >> #3 0x000055bece1253e3 in get_char_property_and_overlay (position=0x82, prop=0x5a90, object=0x7f105451a265, overlay=0x0) at textprop.c:644 > >> #4 0x000055bece156110 in string_buffer_position_lim (string=string@entry=0x55bed52e8b24, from=from@entry=32, to=to@entry=1032, back_p=back_p@entry=false) at xdisp.c:6246 > >> #5 0x000055bece1561fa in string_buffer_position (string=0x55bed52e8b24, around_charpos=32) at xdisp.c:6284 > >> #6 0x000055bece1aaddb in note_mouse_highlight (f=f@entry=0x55bed1a839e8, x=<optimized out>, y=<optimized out>) at xdisp.c:35339 > >> #7 0x000055bece4039ac in note_mouse_movement (event=0x55bed1ce6030, frame=0x55bed1a839e8) at pgtkterm.c:5821 > >> #8 motion_notify_event (widget=widget@entry=0x55bed2024130, event=0x55bed1ce6030, user_data=<optimized out>) at pgtkterm.c:5905 > >> #9 0x00007f105c684fd8 in _gtk_marshal_BOOLEAN__BOXED (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=<optimized out>, param_values=0x7ffebc5ae4e0, invocation_hint=<optimized out>, marshal_data=<optimized out>) > >> at gtk/gtkmarshalers.c:84 > >> #10 0x00007f105c095210 in g_closure_invoke (closure=0x55bed1ef9f40, return_value=0x7ffebc5ae480, n_param_values=2, param_values=0x7ffebc5ae4e0, invocation_hint=0x7ffebc5ae460) at ../glib/gobject/gclosure.c:832 > >> #11 0x00007f105c0c2ea8 in signal_emit_unlocked_R.isra.0 > >> (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x55bed2024130, emission_return=emission_return@entry=0x7ffebc5ae5f0, instance_and_params=instance_and_params@entry=0x7ffebc5ae4e0) > >> at ../glib/gobject/gsignal.c:3796 > >> #12 0x00007f105c0b2980 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffebc5ae6a0) at ../glib/gobject/gsignal.c:3559 > >> #13 0x00007f105c0b3204 in g_signal_emit (instance=instance@entry=0x55bed2024130, signal_id=<optimized out>, detail=detail@entry=0) at ../glib/gobject/gsignal.c:3606 > >> #14 0x00007f105c9447f5 in gtk_widget_event_internal.part.0.lto_priv.0 (widget=0x55bed2024130, event=0x55bed1ce6030) at ../gtk/gtk/gtkwidget.c:7812 > >> #15 0x00007f105c7e20db in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x55bed2024130) at ../gtk/gtk/gtkmain.c:2588 > >> #16 propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030, captured=captured@entry=0, topmost=topmost@entry=0x0) at ../gtk/gtk/gtkmain.c:2691 > >> #17 0x00007f105c7e2212 in gtk_propagate_event (widget=widget@entry=0x55bed2024130, event=event@entry=0x55bed1ce6030) at ../gtk/gtk/gtkmain.c:2725 > >> #18 0x00007f105c7e2fbb in gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1921 > >> #19 gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1691 > >> #20 0x00007f105c542cd3 in _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:73 > >> #21 _gdk_event_emit (event=0x55bed1ce6030) at ../gtk/gdk/gdkevents.c:67 > > Thanks. This sounds awfully like another bug that was fixed last month. > Would someone please take a look at this? note_mouse_highlight should > never signal. You cannot require that from note_mouse_highlight, since it looks up text and overlay properties, and those can signal an error if the position is outside the valid/reachable range of buffer positions. Do you understand why note_mouse_highlight was called in this scenario? The backtrace seems strange: why should GTK care about our mouse highlight?
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Po Lu <luangruo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 06:23:02 +0000 Resent-Message-ID: <handler.60144.B60144.16713445416153 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.16713445416153 (code B ref 60144); Sun, 18 Dec 2022 06:23:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 06:22:21 +0000 Received: from localhost ([127.0.0.1]:60250 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6n41-0001bA-9m for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 01:22:21 -0500 Received: from sonic316-22.consmr.mail.ne1.yahoo.com ([66.163.187.148]:34478) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1p6n3z-0001b2-QH for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 01:22:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671344532; bh=aeDQSq5NKpSwS5BwLtzdE9XyxNxfY6qqIVk7yjOA+C8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=YcqULCiGs3dCibs+GAlrz6IW9mvNQ7CZM1NocAzsyEKaKU3TbOTR+Abq4spEfXloVPX8uTaM8FNOBRlGS4uDgk82lhKzHlgus2GgGHfKSlVXNbS0OYfyIzpnC4y/c0gxFRVIAnixWCofhDtHl28qxfkQdbjQ7nLX+psK2s5ezb5ySJs+EAUrD7/zRDRuETPy2BPUk8/LqvgtSaaPbfypBsRJMKalcjcJl/1nw5JCepNzvDu0enbvzUyxXdRoz2SjW2l/jDbXCqEvtdQjpqOSO/X4An3336Dh3c92jVBXpYkeipUi3SiXM3MnPboJqkVNVHngxw0WSBy+ykgE/5rzJQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671344532; bh=vTFt6aXMMHImzsYBpqUbaqah2uzjQLq85GFV0tWyteI=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=qv5pSTpi60fcwyVYe3zH6wwEmi8cH8whg9797VSfArIt1xVH6Rh4rfupwzYvm6oBR3ZvFajvyzq29q+xTmz57q5aWJM+8Ia+5vmrI+JLSd+hN5OZyFHtL3yuHL04oRTK+sokOcj6eUe4OjWHMRyiaepXNm3Fqhcyq1ot+3oaqXL+IZvlsM0RIb1TsezgSU93JR34gsoY7DKqjNDj+ugoKaqUHiolWAOYWi3ahfx7u8M5q5RSpo0olXgzoqS8+nhnbiJN43Jw/bYrDLfKKRYOIyRhStIdD+rsJUSVt/VaA/pQTpugT7yZmMHKNmHRWLHpfZUoIaPFYYNVAtmnaNaLWA== X-YMail-OSG: I32OXi4VM1mM4b22EDR.nc8VR.1cwzav0z08fVtfpbizejcMgt2JfJ13jfVZfYb eCHrLC54hVXGDeOTYBAbpliNQxtGH.6HsNwFh0zQogqYoyClJ9qgfJa_zDX8nvkL4zUnkxPEUabT TmLoXHg6wIPk5yomi.cUpY.DYQhTt3gMwUyP84LUCBU5sob09PkAZA7T3L4PIIC20h1ks8EnUR9o n42n7K9qB3WtoDD.j5Wvz9BePQKn6knnDnbcBbb_rcx8J4haCaayGopRs5MqGMuioVabS0ccsGjO CptWF8_RyTMW_sEaZfeH0ySWw7_OL.DkQ3kBNNJptcjyw6dz4Ss8ue04YjKJxSwzmGeeAC7_h8oH In2U3.nEdNlO8qc9s.Yhl8C5X4zcCRufRXPR2cvATv.MXmt8n_aIfF9Vno6F2n6bKpkP.hXDRRos _HEj6kOcqWJRyGnDGAqlBSTJIzxqFTLYMhooqJ33smYkNVG7j5XI6uVXVl3J6_3hzg.H.dKec3jT 7A8XGK4jexPvlQQFrko47I7N7rMhc5bRURXUHfYh4ic5e3BV7dkLtXs1E_aFcb5YtdWW6PcPpsOj lg1Aqgp1a6r4PRtHvgrH10pfknWewFBmaMp756_UAV1FPcxWVbq8HQQ60_LUSHUfO.OZi.807ikt JPvqLZC92tvou19Qas18NcEv.O5Fj03hZy65bJEGatFOuYdHUEG2CSOTVH6AOAXkWMzeXmUZJUIa SWJyyXGi8N8B8_ynOv5SKr5CB7qALKcKDpC_LXC5RHpq.OUae0Mp72v_mRx_8AAFPhgL1ZoT5hVD oT6sWqec4BunNDnxp8i11LQ0wQwpcxNLdGVk6vafAcH7culxUmo1fvrcRSSaJ6pnUqPrN.sqZkT2 bVmV6QoDZFEGmI0bFGsndU295ZsM7bsRPq67Spvuv77h5YiQXyWL.bESYbZ6sukgK6rgaiv_LoI9 Tuj9HlQR832n28XDRYVeuHqvVlOemZM9Tyx.rgcGCRdsdef29fM5JSCUNaLxFGtYDuwPHjT75Jgx MC.FheScgEBYxm6JoA2GjKScQ4cHgQaP0cc3pgv0f5Lmbloxo_IVIlPzVElgRiz4njCRgJ8cTHD2 U8pNmNJa85XxOIiE6p1L6DOVPIXdoHxeUijKzQ5PTOPsgT.Qg75YPzKgA24u4r240egzE0QvQzj2 LoyEK5JuDFYe5L00AGBwSTlzEiBYfv0Q1F7jgn6YOzL9Fxd9UiHGs90EedBAF5Ebaosdz7lfhd5x 3arW9wriq9SPY1M54cmpo1LwMEjU4HbtLCaQ4T2K8TmeyYlKMFj8j0gR6Wyvj5rnuXLQr5OZ0Ysd Vc9i6I2ruq8CYWzbKHJus2K7F1XvD2PFxUBGPMjejXafGQEr4kwBN0pdBs2osx7S5Yff19pTmsua RlJxdkkXpX2f2FTGHYRrnyYnAMKTAFNm4VIcZ4JpwjAGWllPvMEFBMY4R0nGl33cMgYc61fhRLF6 wlueGPdD8.YN_P4W.X6gRkS6zWOs.vGfW_Jj8v1kpTmSTZzg.dlIioEUezE6H1iBoKrTu2uOWKoh .rHjENkuBDm.7D7zb6Wtd.yLU5zvkjFpz8lTK9rmVYj7.fTIe8fHlCUJHUkDV_XthE.kHDxliaxT k.vFhzuam16OD1l76I3duRyDOmehxRwA6JNBxCUuvAJBU7U77X08zB0_gmPmSUeWpljrTN2lfnS8 MlStAzAgkUbbLLAXLHdhjt.7mIzFEg0ErycmtAsTXSlcZvIqZRsZBvV54QJJD.QdKAV5KFYPMhok Q7h6SgJoIS6gRYlRzibEqOYolqpdFIKBmbtwyT4L6Qov4Z..FTfnAPDV3WnM8HzMFoPOExNDsZgu D._KnyjlzwAtd1Vv.nK.kKP6Fbno85D_lg6PFAWCSkm6V5P5tfpjg6xo87UVgFt8Lbz95.v7qPhJ jskV_nna8mEm8ar38SUBIFsXRgndYe1fuGyQDI7Ab53GOqGTL_vNfwDxpKb6boVQT6BuxFvgdRuX lBJjrmDdfHjQoYyMWvOCT8vqfSz07uT._SAa89o8ixz_NDKH8_YyNMpj5toSYdZPwItV1GGqZw1T 8yi9yzjn9_Lls.VZl2w95KfWHDLKJpucTKJ4pqduS3lC6yx.fA9vq3aeAtIiSuu2oZgBQUCk2Gr_ bR78qKwbZAH78KzTxRqXMedzHMi6Fdj7JzOHV0zU9b6pDS9HE2Jb5UTevk2ehfvhNBE2YpGukGOr hqt8gMAg2SdD3wmvm7zEY3W2MHu.Iw8d7.TNZiOMTjMTcgao7g8UrAc6yWW1CB0A- X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic316.consmr.mail.ne1.yahoo.com with HTTP; Sun, 18 Dec 2022 06:22:12 +0000 Received: by hermes--production-sg3-b666c6484-fp465 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 607338c3e3510f23f9c8dd08519dbdc8; Sun, 18 Dec 2022 06:22:10 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> In-Reply-To: <83359dgt7v.fsf@HIDDEN> (Eli Zaretskii's message of "Sun, 18 Dec 2022 07:45:56 +0200") References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> Date: Sun, 18 Dec 2022 14:22:04 +0800 Message-ID: <87a63lfcz7.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 736 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: > You cannot require that from note_mouse_highlight, since it looks up > text and overlay properties, and those can signal an error if the > position is outside the valid/reachable range of buffer positions. How about simply wrapping those calls in internal_catch_all/internal_condition_case? > Do you understand why note_mouse_highlight was called in this > scenario? The backtrace seems strange: why should GTK care about our > mouse highlight? What happens here is that Emacs is reading input through GTK, either inside xg_select or the read_socket_hook. GTK then detects some mouse motion and calls the motion event handler for the frame's widget, which in turn calls note_mouse_movement.
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 08:40:02 +0000 Resent-Message-ID: <handler.60144.B60144.167135279613204 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Po Lu <luangruo@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167135279613204 (code B ref 60144); Sun, 18 Dec 2022 08:40:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 08:39:56 +0000 Received: from localhost ([127.0.0.1]:60861 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6pDA-0003Qu-3t for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 03:39:56 -0500 Received: from eggs.gnu.org ([209.51.188.92]:50550) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1p6pD7-0003Qo-Rs for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 03:39:54 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6pD2-0005GW-Cw; Sun, 18 Dec 2022 03:39:48 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=ssrOZ5cCvXxmrUkoNvO8sWEvyW1Q6GbUoKctPOBQVkk=; b=JN74BUcs9j1u bFW5uISFeQpr5Kzr8H/1K8h5R5c7so9CAcyHbs1jjZ4k/xyXVYGSsEqIlDhxcb9aES6gYvCfJSpOo xArpj30uSj+yv0mNoIiCVgnV8aNRXUnmQW/tYY4tYN8wQj2C+gg2sTeNfgKE7Vo43jZ3v8/4QXWM/ bXoHOHuJT1cEMdvutiASv7agOrqA0k4ma0NRMl/+l9TBYxmzzgP46ydbyUe/RPwwkrB49eFLsusjm itgwVjWvQrZ3TNts7//xoUOgLbjzAGerOHmHWYcfgFQk9+6bQ3SUJQn/TzPYaA9tELIcEESTZV0/e qhG8ZMDX7MXv5eaLAryujg==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6pD1-0007Cs-Ku; Sun, 18 Dec 2022 03:39:47 -0500 Date: Sun, 18 Dec 2022 10:39:54 +0200 Message-Id: <83y1r5f6lh.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87a63lfcz7.fsf@HIDDEN> (message from Po Lu on Sun, 18 Dec 2022 14:22:04 +0800) References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Po Lu <luangruo@HIDDEN> > Cc: karl@HIDDEN, 60144 <at> debbugs.gnu.org > Date: Sun, 18 Dec 2022 14:22:04 +0800 > > Eli Zaretskii <eliz@HIDDEN> writes: > > > You cannot require that from note_mouse_highlight, since it looks up > > text and overlay properties, and those can signal an error if the > > position is outside the valid/reachable range of buffer positions. > > How about simply wrapping those calls in > internal_catch_all/internal_condition_case? This is too drastic, IMO: it would deprive us of valuable diagnostics when note_mouse_highlight is called. Like in this case, for example: having the code signal an error allowed me to find a real bug. We were asking string_buffer_position_lim to check properties and overlays for positions outside the BEGV..ZV interval, which can never do anything useful, even if it isn't called in the PGTK context. I've now fixed that on the release branch. In general, note_mouse_highlight should never examine invalid buffer or string positions. If it does, it's a bug that needs to be fixed. > > Do you understand why note_mouse_highlight was called in this > > scenario? The backtrace seems strange: why should GTK care about our > > mouse highlight? > > What happens here is that Emacs is reading input through GTK, either > inside xg_select or the read_socket_hook. GTK then detects some mouse > motion and calls the motion event handler for the frame's widget, which > in turn calls note_mouse_movement. Why this fragile architecture of reading input events? Calling functions of our Lisp machine from context where those functions cannot signal an error is very dangerous, and cannot work well in Emacs. Why cannot we have the reads through GTK only deliver events to us, which we enqueue to our own event queue, and then we could process that queue in the safe context of the Lisp machine, as (AFAIK) we do on other platforms?
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Po Lu <luangruo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 09:54:01 +0000 Resent-Message-ID: <handler.60144.B60144.167135718425497 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167135718425497 (code B ref 60144); Sun, 18 Dec 2022 09:54:01 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 09:53:04 +0000 Received: from localhost ([127.0.0.1]:32993 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6qLw-0006dB-E2 for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 04:53:04 -0500 Received: from sonic302-21.consmr.mail.ne1.yahoo.com ([66.163.186.147]:35392) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1p6qLu-0006cn-EZ for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 04:53:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671357174; bh=ZVPAeaf2Uv4O3B+ilbAFAkVC9TDMZBJ83Wv9bpgxhlg=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=Ei22aO5yP5zhjc6CsHDmZjDQ1j2VDFYCZAeMuB0nm1UcI2QrxOV6x78e6ZzZlHjkU0aRFlax83bGTDn7wkm/NhBX+gsmjhY/0NhogJRKipl3w8G1O4Zwq01uKSXSR5cMIvRsHgr3uGpcaY0jaOba/uFgBg5XRZbRqZb566XFVPhLoIKjBa/3pS2pQRG8RxDXWGxBNoVyrGKsMBNnkiW7c/w6ybuGV4ftrmWjyTXvLKNlU7HJsslzQYvlnRXaxKj6pVThB3a0iMRP7poSddYvMIwLUubwEcTIHgdOetBuXW3WY1NB1UewmFUfxm6DE8GeEh/ZJISux1d8jXoidEKNPA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671357174; bh=74s2KUh8OybRztQUVTt78fZLDJn6RlDg4Y4N8Et91c5=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=AISh08wP5T7C5PA9p0h5AhZkoAoTGY5YJzX+NU+4Ivg4O3oxGsvc0Z34hpouMUxqeV0v6TVS6BK6kS/Lqvv6aQpnfIxonVGFNH8F/8Q19OPrf0USbfNpYqltPV9yxIo8DjoSBcgMndki94HRNB7o3X2KCtvpAD4mG5Q5DFceSkOAJkcTKthpea1Hs9B4vs8TIqmtrjZlfZArHckdtYA9cspSyCRjHheMqnYJEGV5w8WsZUppipiz2PTMnhftujrkH7Nw0aiMgXdajCZbnyDzItYgEL1FTxwNa1l4dXQ5At6bm/ESTHex/4tbiO1Ky6Zl1zg7eTtioXUQkwEgr5QbDA== X-YMail-OSG: x.fNFDoVM1mgCyoffgxzqA7t33MoQ0.GBam.U7wFjDf69ljYgfxsDtMSNfnu6nC 3zUxKiK79lFYDQEXHxsS0LeKDSZVmoRoeKzbDc2.mlKoEo0RE5amSXVPoMPiGd2fIcYjb7PF7Jc_ KQBzJD9P85KjJPYFW7xKYHp_yyhAI6UcAg9_1NQPpU0Xe6BI1mrNjY13tmbatZmXRdldNXM_4x69 _ntyx3HOzj0cYzxw7pa7_0LjAaR1UQpNC.OaIIHOT_L4OR2GwnBCO2nukvMXetRarF35i6rokEUi 4uZDk8_sLYNZ_kKeStMYmBwtJqI2N8dOTMXsFoajfoTxzRmZKbEu0qdQUt.SCnb35YoZAwWSJvIG PpXzim15j1bGZ7q8RqKRx5KqFZR1cNcNlZfq0onGhoRV7a_BCjot5XIzo2Flc0k5bWH3mbTCaZ1T hTQAIFxMXOW2RqTZmPtjxxpg8AQvscdvn7_X333ezsJy.4OqcCieSOslJ_7Bx.7qtJWOgm.P6FnV .VQFmcdcoK.QGvqUA6puPvqBl1zAVqIpdgUSHtp3ZQfvMrhNOz98h3ItD15.KiIgJCkzlCeYAlbk QcVVuL3pp8hS6NxMj_t.NUvn0tEUq.BzjxDkzVNu8IW68pKStzNVoaR96kOzEpsywbTtn0MfFDig Zjw_RcRAYZeHIfpoIqVS6Y7EQ4gUfJs156WR3oHBd85YaSbwfsYEr8ymjCUbsBKj5wNCPOPuT.0u LzAVmR2T.S4_yVUIO0O0AgHBe63cYaeV7ffwKKhaVCocR9FgQeYIY0M_PqpdUyxb7AAOAkp4Nejs YRPqKzEbjGQS9JB7Hhmkoc8IK9.ci2tWtARDQk4fTSsvj9kIsZ8ju1WgOQxQVD9lJ8dSlMovbIyT mJhCb9Uuyi6sOVMdjVyp.i01YubaUtsCCtFGXhXq_YrcisXfy4KsAHwy18653jAZ63VsrWhVsm4H jQJiknHhk7QG_QoP69eUh39hpiJBFSq4pKjDSGH9Hav2V8ipnsBUIPFYAkddPB1._Q_jBS.eHNu7 NL_Tb5hNPv1Jktvw6Gz1lI9Ke6L21AcUildWD5B4hAxGgfWyYyPlpU6TGhekcBtS4w57qKfbNjcq IjS_APX91w5yv.4FNaKjCH9coZskTQpcQVZNwZ4O2YI1Xb4YCXuJe9xnyMlwG0519yEyiVg2_vci And752dU9gjZ84GmvuJXCV5ofIOQLsKgZCG5z04lfCaYy9EANQlsH9ZVRDE0b5PT7fRqd5yGOidX xftX8eWolcW8W7oVRDnQYqlO.EJkrgVtx9oqY1J2ca2rVXkfd226u2gKAiNAC8MV23mX6XM4ueZU k6Gm1CNCiEEQQQBQF0DCwH_t2YUsN5qLD.v_bBXRIzvmhPKoQJ4_StAYCZBJkLzlSOZkxbYMqLKW R2dw9yikafw2gpfM6frlrmFqLgPNbMv5bHbN4dwQg5sm1lDF5wlmlOCaJLUqKpKBiHTPeA1NtQYx _K9OnrtVU94aV8_T9RDIzEALuVa5GDPRO9C9UOXa7eB.RiDyO.6BdJhIsr0VC69ZHT7Xgq3xAofP Ob.wbtroVZB8b9o8T_Mvt.qgbx99o1EvokHAkMnff5px0EhPdG8ALP7xta5U4jjPzcxtb75z8Q4_ 3iVmsU_dKOYh4UMEy1Fx08L9fZru50r7Idbz3n8klpHjTodqPXUks.ZowB5xrN5JOvTSZJrnTDpg 5if5hC_DaZ6LMV9TgZ0mw9P0FKeOkf85G8tfiw3w07xkB6MR3ZHedTKUp4oUF36Om_zttn8jtPOh pppU301si1VgPWF4PnRiO3Dry6HdieahyHu0PC8jYUfFTZONsd3hoMPXB3S8baUDG0eMtmquTFLk FrgTHisgah2ZsOV7nQWxtpw76zdNWZUB4CpdQImlCbVPqz7sePFJ6wTnw8F8GeLCo8By2FBFD7pO 04Z7T7FpUGRhHf1nlzEd7REtM7O0z0DggZCBQ0i61EqYRuUpWm_cRxQ4pRpg_7CBSTf4WqKCQxLk 4dDa7H7B6yUgF4uA7G1ZoQvYMR3c82kj0_BMsR2xJPZlNletkeCgkzDYeIEeHj3YC.UTDfrjQE4A E4ec4Ei7FLVcy4DQHpd3fOs8AaX5hpUzTkarqtsOgljzwyYcIOcBujCcds6ogazVyI9xCCuevCDU nTtgFKIgb__Wposx8MfRhGA6RUc9OTX79ghopGPZEP6reT7gTM4M.HkUgQKgml0BuO1MgtRCkzDG ImBe46HeaA6QVIZ91LeGPUAWWqJQ_C_pI5o36j6jnQgsZttY2zuhEaPIgjl5Pj7CrjA-- X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic302.consmr.mail.ne1.yahoo.com with HTTP; Sun, 18 Dec 2022 09:52:54 +0000 Received: by hermes--production-sg3-b666c6484-bdtvh (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 6d612d45437ae2b1c159801a7c890e5a; Sun, 18 Dec 2022 09:52:48 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> In-Reply-To: <83y1r5f6lh.fsf@HIDDEN> (Eli Zaretskii's message of "Sun, 18 Dec 2022 10:39:54 +0200") References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> <83y1r5f6lh.fsf@HIDDEN> Date: Sun, 18 Dec 2022 17:52:42 +0800 Message-ID: <875ye9f385.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 1231 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: >> > Do you understand why note_mouse_highlight was called in this >> > scenario? The backtrace seems strange: why should GTK care about our >> > mouse highlight? >> >> What happens here is that Emacs is reading input through GTK, either >> inside xg_select or the read_socket_hook. GTK then detects some mouse >> motion and calls the motion event handler for the frame's widget, which >> in turn calls note_mouse_movement. > > Why this fragile architecture of reading input events? Calling > functions of our Lisp machine from context where those functions > cannot signal an error is very dangerous, and cannot work well in > Emacs. Why cannot we have the reads through GTK only deliver events > to us, which we enqueue to our own event queue, and then we could > process that queue in the safe context of the Lisp machine, as (AFAIK) > we do on other platforms? No, signalling there is equally unsafe on the other platforms, where note_mouse_highlight is called from the same place(s): read_socket_hook, event_handler_gdk, et cetera. Just look at the callers of x_note_mouse_movement in xterm.c, or [EmacsView mouseMoved:] in nsterm.m. But I see you already fixed the bug. Thanks.
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 11:44:02 +0000 Resent-Message-ID: <handler.60144.B60144.167136378230500 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Po Lu <luangruo@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167136378230500 (code B ref 60144); Sun, 18 Dec 2022 11:44:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 11:43:02 +0000 Received: from localhost ([127.0.0.1]:33460 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6s4M-0007vs-Ga for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 06:43:02 -0500 Received: from eggs.gnu.org ([209.51.188.92]:43956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1p6s4L-0007vV-Cg for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 06:43:01 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6s4F-0007qh-N7; Sun, 18 Dec 2022 06:42:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=hDqQO7L9OdYpHCcHm49YPvBs+s5QVU6JsUheaS7owDo=; b=I4nFf3AYBClO 7x/ontpDkDPi8pgasnfzRth0Wy0Xmu0Ky4+YpraExE6LCu+Q1WZytXdl7d8HdQ5hoUUxdtyOtoigG vpMjG+lYaAOnrh3QOpgvb+kdCU3SiMKn1tfbwXEYRG3mfMD1VAWrZSQJwHWT+gX6M/5tQAMlJqB7S JNXQ3BsxBdQSXnfbkVt+/+OYD4d7QPpQCHsRuUeTbrQFin7ArZFtT68JMfZdPmueSl/+ZOzYqmI0l E/EVwr8Qkku5LD7/uKFQF+6UZTkI/mWlBxycNS8a4XaPwmsw15xN0GlWGRd24JAAClHhUOnSdifVh WP7N504jRFVgf68A8JfbrQ==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6s4F-0006y8-82; Sun, 18 Dec 2022 06:42:55 -0500 Date: Sun, 18 Dec 2022 13:43:03 +0200 Message-Id: <83fsddey48.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <875ye9f385.fsf@HIDDEN> (message from Po Lu on Sun, 18 Dec 2022 17:52:42 +0800) References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> <83y1r5f6lh.fsf@HIDDEN> <875ye9f385.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Po Lu <luangruo@HIDDEN> > Cc: karl@HIDDEN, 60144 <at> debbugs.gnu.org > Date: Sun, 18 Dec 2022 17:52:42 +0800 > > > Why this fragile architecture of reading input events? Calling > > functions of our Lisp machine from context where those functions > > cannot signal an error is very dangerous, and cannot work well in > > Emacs. Why cannot we have the reads through GTK only deliver events > > to us, which we enqueue to our own event queue, and then we could > > process that queue in the safe context of the Lisp machine, as (AFAIK) > > we do on other platforms? > > No, signalling there is equally unsafe on the other platforms, where > note_mouse_highlight is called from the same place(s): read_socket_hook, > event_handler_gdk, et cetera. Just look at the callers of > x_note_mouse_movement in xterm.c, or [EmacsView mouseMoved:] in > nsterm.m. Sorry, I'm afraid I don't see the danger on other platforms. Please explain. AFAIK, read_socket_hook is called from keyboard.c code which reads input, and that code has no problem signaling an error. What am I missing?
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Po Lu <luangruo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 12:14:02 +0000 Resent-Message-ID: <handler.60144.B60144.167136559332264 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167136559332264 (code B ref 60144); Sun, 18 Dec 2022 12:14:02 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 12:13:13 +0000 Received: from localhost ([127.0.0.1]:33622 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6sXZ-0008OK-Cl for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 07:13:13 -0500 Received: from sonic310-23.consmr.mail.ne1.yahoo.com ([66.163.186.204]:41780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1p6sXY-0008O9-1A for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 07:13:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671365585; bh=BMv3eyDgSkRhr0YMokzmnJBlFCAxuEykD4o4pQSVWOc=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=POfnJntXY1ADktdd+mROGor4MFh+reUvlKz3yuROMBswylXY9aDnZrYUDwCVKThaXHjykHW4PmnbmCPWlV0zRGw9cQZbu5iZinrKeQhv2eXF0BGfiMQCdi3b6tL167RGBz26X05jOH6SUi+Rcoi49nkqDKqcTgPiAKy3QGk3isnocP7VK8cHrbLQwQ+9gkTGpv25cXfed7csWNktPYMA768oyWud1zHrN+KFmLPFwcctRLvP0oO91kNAXrprNNL18Xh1PO9T6dQCWBPgh7M1hdIarAmUJusLAUOblc9Jzjyc+lqFEbwXER8lG8e3SZ7PFZ/auVbaQWNZz49J5lW9xA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671365585; bh=E6vxcFkbyuW1Lq4j8lyupZhpINkYBxCyExfhA06FS2+=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=uKQaKuWjWYlZpdyyCvvQxtZJQfjSvPzLXeUwx65tggR+NTcGWpmY1pofzFbO46TjK8VlsC4FMzB/XrpixzVEfAIn2Fg5VnsBJ9Gi59pbSEY620ClDqHufG7r2Os0ImvAWtNgwKuoiGonCis6KqgUqkBVEKAza/1FJbLOYK8xBwDsdVUexY+q6lS13iw7FCuGsd/x92lnuFb4E/oREwlJ0R+5g0Fz5ddOf5NXGbDFnPxN7raDrhAR5lMNxIjgFI4IY4kdPHQHPv2iTPLGSezY0zSAQcCEwqf0RWHNxC4gb8UGuEI2+IKw5psekudLETJS0q40T/HlWMznIt7yCZX+uQ== X-YMail-OSG: L.SbkCcVM1mK4N4i6Sp4cQfkE6NHrJJGcKjfajk0htQcmCmzaYmeTvKhgJ_AXOq wsiGD6IvHDFRz1qsCYMurSTpd_8Daq9Gxv2LiyjO6jO_l0UE0dsJqd78iHLa4FbrYChNKku84hHA ZNz3Ka2_..F_GFXl3bivj6LaeMIkt3OVZwkAC1hZyYEe0jNWw4OTxmWoP9QmsBKutmYnuIvi8Ba1 YIuehY5vOFLEgEkbpzibcm7vKSGem7fiyaaCgdJ74IRkq82Afp5_mXrR_GU1YjCT10x46G._Irnv yQO1z3OISzlQDkTcJzXkuWfZxXf6rtXJU4BNCrIpnzRGli36_7m.5CNIUTft7Nbuljpa.50.7HRQ dO6N4J_Xx0Xg.nOGoe33EJlb9W4jq841IYzMYyyQkteLjxZVL9EReKYJfOO.ZeYOdGwsbaf8vXL_ 6hwx1Nb5DIl9.aTig6P4zgKXDQFetU.Kryy6TFMrYu9XWteAQKg.Raa4saZcJGTqH8aW6neZFsd. I0lsfIHAQo_KEHg19mYR.sc8wH7Zt0tm12TVUCxlEluQEWev1m7uEzM7CwhpU_v2PPBcAXYaZK4G 7yO3UjZanKI49mPqk2vKDUEK2W7jzJv0YIMzJEFLfihkXmkR4ZQrslkeQGybZUDE_TjgSE6tLWmr gcxrBHGfo78SyYSv.nFR6UVRm57mUb8.TEbo7CMO7pQGzqJWAQfJ6X6S3j1enWDftclLzgjeqgMP m9ejXzZxfSVQPtxm89apxiMf63uRDTCvuDR8dbVB8drFpd1RCQcIAOabXXiqiEvsHKnIPK5ZYEVJ G8IUGYOdubYQ8gOl1L4q3h6I7SRSVcFlmaAaEhI4.C2JJ0DP7sR5MQO0InE8Nd197L0bbMAvUKby DvVSPz89p_.Veo1fGRus4wQ48abDb1U40lLPTaf4IBD8yk7cbgpXUoXX4LX4CGH7xPIDeLRczkkr .OSEdZ.B6IEHQnGRXkj_Eak_fXuJ35PeR08BWdbt9fGOhxex7jMcGxhr6UIkM4oQ8lbyPfsnJL4m KcAvlCpKOyPwxIPhSC7dqBPvzb0QuKQPEIYJofIyR6wrUlCzFoIubZZ2ToXtMx14mBHa3RA9o8s7 SpWmDfI_7LgLx6oqczAeyLECPZNjIzXKyw_BoW7AQZLN3t1y5wYtDYpOuebFLBDxy6ryUc8PlKwF PqJSzY5bpjcj41jp_6dRgD4KDF0omUT6ijYVLqRwc4hDb3HXS6jigb4AQsjy4dyio5bg0bm5xlB0 OgnY3WHH34IG688S4vhdpukmw2L6XtE8zJEgzyHVjG9gsaT73xOjtalo8TItIjbPr06lu505hyqB 6X5K.DrtXqJJYJqVtBzPdbHV1af3gWrpCmm_rX8ToR.i6n_VTd12D4bh7pAvMqdUXAm017q3_vY3 xGL3jr9iGKn0oTT2GkQWPoHoXT7vTazziAdp1ZJxkJlkByLyUV.WIz9JOMO6AYnNoCw8isKxehBZ 2RTkCgWDbxW8kpFBgirHbLm4ykFZxVfrBNQUUyCO.caoAS2c3QfcOe4bty8kFe4wOHbw1wi2TPvD Yxq4luNggIw9grocSJ30_AjdnLDhxE4ZdgMv7JvR6bAjoPSy7fW5tuxPyQlVBqkks21b3XLx8g2W YZX5t5kyUb0ghkPA1pB5g_MU9UZAm4B2TJiAIaCNch0gbjl7PIgjNtnsex0dE1YAlBkonH5aYLqC K05VNqblO6Vq7TBKxXvnrNVRYI7SK_sjEZFTcduDY98MIA8lVY75bwMm2NgUPdBLpLtemYrvfnzS DhN4V_tm48144mW3B45wQ0ZcGb2UXMzsTw9aCwoO5aaMlFRWz7HHEjJoozrvq0q6pxKcO4K.Wifj JUNU9FQKeGM3U.yTytXBRBycuXH_rOWguGldCGj2GfrtB3jjgz1ZR1hW7fmFyIC1pte6z51hHmER FRQWDgDnnS_vLOYhNFBvVsNMav3ZH7Ne_P9OHHSTZn0d.ZnpqHuO1o4PX8XGaXXSw3vIYEfMUuy7 .vpSgI_onIp3_cdogTeni5jk0VZKBBbFo0Akeb9yT5C05cMc.CYY3wRMGLiquVbMnJKjLo6pGn07 3_bcJPFwzzOTtA5UqZkfU0lmHvK3BtrwPTn_pgmxFk4HPd95OIYza3yvFHSGyVYIrTzzq4GB90lV EjGhe_hW7FtGfFymbIYhRKPyV7yFHU_Bdfna_ix713AHDg0CJkp4RVpmi0wG.DieTpehMtDjerY8 y1JeUdz4tBh3jw4uw.Y5oVTzAZnGle5FOZeCaW7Ct2XsvH8iGLvghNsWSYFcx_l70 X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic310.consmr.mail.ne1.yahoo.com with HTTP; Sun, 18 Dec 2022 12:13:05 +0000 Received: by hermes--production-sg3-b666c6484-8hzhs (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID a06e367cf038923cbcd7ec6e607c216a; Sun, 18 Dec 2022 12:12:59 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> In-Reply-To: <83fsddey48.fsf@HIDDEN> (Eli Zaretskii's message of "Sun, 18 Dec 2022 13:43:03 +0200") References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> <83y1r5f6lh.fsf@HIDDEN> <875ye9f385.fsf@HIDDEN> <83fsddey48.fsf@HIDDEN> Date: Sun, 18 Dec 2022 20:12:53 +0800 Message-ID: <871qowgbay.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 1879 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Po Lu <luangruo@HIDDEN> >> Cc: karl@HIDDEN, 60144 <at> debbugs.gnu.org >> Date: Sun, 18 Dec 2022 17:52:42 +0800 >> >> > Why this fragile architecture of reading input events? Calling >> > functions of our Lisp machine from context where those functions >> > cannot signal an error is very dangerous, and cannot work well in >> > Emacs. Why cannot we have the reads through GTK only deliver events >> > to us, which we enqueue to our own event queue, and then we could >> > process that queue in the safe context of the Lisp machine, as (AFAIK) >> > we do on other platforms? >> >> No, signalling there is equally unsafe on the other platforms, where >> note_mouse_highlight is called from the same place(s): read_socket_hook, >> event_handler_gdk, et cetera. Just look at the callers of >> x_note_mouse_movement in xterm.c, or [EmacsView mouseMoved:] in >> nsterm.m. > > Sorry, I'm afraid I don't see the danger on other platforms. Please > explain. AFAIK, read_socket_hook is called from keyboard.c code which > reads input, and that code has no problem signaling an error. What am > I missing? That code has problems signalling errors, unless it is okay for unblock_input to signal. On the regular X build with GTK, handle_one_xevent is called from event_handler_gdk, which is called by GDK when it detects an event. handle_one_xevent can also be called from x_dispatch_event inside a popup menu, and during drag-and-drop. On NS, [EmacsView mouseMoved:] is called by the system from Objective-C. Out of all of those places, the only place where it is safe to signal is inside the drag-and-drop event loop. Signalling out of the rest will either lead to catastrophic blowups (if it happens inside event_handler_gdk or [EmacsView mouseMoved:]), or to grabs never being released and resource leaks inside a menu.
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 12:34:01 +0000 Resent-Message-ID: <handler.60144.B60144.16713668039541 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Po Lu <luangruo@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.16713668039541 (code B ref 60144); Sun, 18 Dec 2022 12:34:01 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 12:33:23 +0000 Received: from localhost ([127.0.0.1]:33716 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6sr4-0002Tp-T1 for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 07:33:23 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51530) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1p6sr4-0002Tj-3i for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 07:33:22 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6sqy-00010K-ET; Sun, 18 Dec 2022 07:33:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Tc64pNyvQD26pGE6Ok8cUEWyoaCDuZZb8U+AC7/UPT8=; b=C9OEN0kxd8QD EYJDm2w67+vR34ZFwHdGFrR3MimlpTJgKMKWvWC+8VdAAuNM6eNvMXV7G6h2UDfgL7DPJoLPS3Dd2 +wVBl8v+MGVgRUh8cndG+n17UtUZT2L+taRrF9DTahsTEwwp9SvCEoialq5nzqjLPzkgi3HReeRbZ 3kvZX8DMmYDBcNaCiAgzZ04ThPGx+D7rPjZAY02TVvAWt4i2oTKuZ2JsAkUxdqMn8MxRppYYkXZBT wBiVO8ZzqpXJzwOrJ7SZhBFfif2XHMQ7qLS39W6IpQeef0uRR8HUXaSkSEdDay+0yB4Fxnwy7TZxN bjvVv9EmjjD2EkUmeOAKEw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1p6sqx-00065x-PS; Sun, 18 Dec 2022 07:33:16 -0500 Date: Sun, 18 Dec 2022 14:33:22 +0200 Message-Id: <83bko0gact.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <871qowgbay.fsf@HIDDEN> (message from Po Lu on Sun, 18 Dec 2022 20:12:53 +0800) References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> <83y1r5f6lh.fsf@HIDDEN> <875ye9f385.fsf@HIDDEN> <83fsddey48.fsf@HIDDEN> <871qowgbay.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Po Lu <luangruo@HIDDEN> > Cc: karl@HIDDEN, 60144 <at> debbugs.gnu.org > Date: Sun, 18 Dec 2022 20:12:53 +0800 > > Eli Zaretskii <eliz@HIDDEN> writes: > > >> No, signalling there is equally unsafe on the other platforms, where > >> note_mouse_highlight is called from the same place(s): read_socket_hook, > >> event_handler_gdk, et cetera. Just look at the callers of > >> x_note_mouse_movement in xterm.c, or [EmacsView mouseMoved:] in > >> nsterm.m. > > > > Sorry, I'm afraid I don't see the danger on other platforms. Please > > explain. AFAIK, read_socket_hook is called from keyboard.c code which > > reads input, and that code has no problem signaling an error. What am > > I missing? > > That code has problems signalling errors, unless it is okay for > unblock_input to signal. I don't understand this part. Why and how is unblock_input part of the picture? > On the regular X build with GTK, handle_one_xevent is called from > event_handler_gdk, which is called by GDK when it detects an event. > handle_one_xevent can also be called from x_dispatch_event inside a > popup menu, and during drag-and-drop. On NS, [EmacsView mouseMoved:] is > called by the system from Objective-C. So in the X/GTK build we have the same problem as with PGTK? If so, why not change that as well, to work as I described, i.e. enqueue events to our own event queue, which we will then read and process in safe context? AFAIU, w32 already works like that. Does it not? (As for NS, I know it does some very dangerous stuff.) > Out of all of those places, the only place where it is safe to signal is > inside the drag-and-drop event loop. Signalling out of the rest will > either lead to catastrophic blowups (if it happens inside > event_handler_gdk or [EmacsView mouseMoved:]), or to grabs never being > released and resource leaks inside a menu. Yes, understood. But it just tells me that we need to change the architecture so that the events delivered by the window-system are not processed in callbacks we install to be called by the window-system, they should be processed in our own safe context.
X-Loop: help-debbugs@HIDDEN Subject: bug#60144: 30.0.50; PGTK Emacs crashes after signal Resent-From: Po Lu <luangruo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 18 Dec 2022 13:46:01 +0000 Resent-Message-ID: <handler.60144.B60144.167137116012640 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 60144 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 60144 <at> debbugs.gnu.org, karl@HIDDEN Received: via spool by 60144-submit <at> debbugs.gnu.org id=B60144.167137116012640 (code B ref 60144); Sun, 18 Dec 2022 13:46:01 +0000 Received: (at 60144) by debbugs.gnu.org; 18 Dec 2022 13:46:00 +0000 Received: from localhost ([127.0.0.1]:34015 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p6tzM-0003Ho-7x for submit <at> debbugs.gnu.org; Sun, 18 Dec 2022 08:46:00 -0500 Received: from sonic306-21.consmr.mail.ne1.yahoo.com ([66.163.189.83]:35573) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1p6tzJ-0003Hf-GY for 60144 <at> debbugs.gnu.org; Sun, 18 Dec 2022 08:45:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671371152; bh=pAJV0sH4ZTrHOi3iGiSNDsWaYlnXDTzqdAbeTwf3nOc=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=JoLrpNkfja47Zb2apJDLjmiGn7UR6BCWiagwxNM1+AUzhyQEjz0KEc2gwZHCp+D7mskmTJ9PyoDJy9WMWuZ91owjvvX9PsP2dXycsqY2aECJBzGYouFF1fupUoGxPA0hSz+UaShn8KoptfvApX27RrIeQxD0LZBNdkWAmmqfVnIurcnbevao/Zwo5KlSC2a7PM4kbL/yqO0Pxwz65798Fu7U+wZ/u0GEehBJzcTXKZO7aQzD1Oa4+i6ILQkyxrF/0DJRLkMpdzwGzc9q2AgG+sSvAf6P424kveW9+jc0wbyN9y7SjAM1/vIP8drrEbiPqbRpII4+bP0YIIpuBt1/8g== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1671371152; bh=VwKhu/CwQGIAb4A69NaS3VUK6oRwUjVZO7bHg8KFggy=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=T13XJIPcEwDg0wJaH1hFpYhP43S84dcPhnnBFGZswnzC6hxthQ4BCVUBRtch7+k1NL5s+NfVvJUMmCE5y+Dd9oqgP5y5a0qKllcEaFbG/zm0Lbz7yE9fiEcnBWcavNt6E76tBrJlX7zsu1PLK0xHUTD53/0n2b3irKG77vMoxw6gbkz5DfiaGT4DOeY/H5s5pRJEecT11p1CGb2NakGQZ9BOjYijewKJ3Vmf7ZSlD+XF8DHmMgGGrc5rV2+HdxETj05p1E+DC+zem/hJbBkzGLNM0R+/bgGal4BPb2Vkq3g5W5CCDqLGr/VKzQxeZFZup8aPMoPPWeTvTP+W8ew2uA== X-YMail-OSG: uh.wnHcVM1mCNxOtl10qILkbM3AMJE986CYCtdLe7rUGBfUN70rFvoZtpJqisrt zImaA2GdjMXqZ3p5_BtaCkAOZ1XpkKDoLs0nzrCsbVv8GpE7rc4MyzK4di9zbEA3mshpt21XEOE9 rGrnsXYFwfZZmpV1kTGgUfSAXY.bxe2V36kygQNer5ITflR.LXMPZ_h1E1_AZjh9Gp8.75mRwUUD 32CQO_D1v.qYAwaB1FTrXXWiE3ZtRoJJPQdDE1_kH0jiqmBXsJiE2Kg.aGicQqDVyu4QlV.2xnvV 3_aEoTugBlbBtAz8HNrQnnX_c7H2iIi_1qXTHfC9taLTN9RgPyzdU4gMUYpF03C1_Bw3PPqRlzot dLhCBrwtUO07RaWF9yI9lEqtSQDqvU4nPjElWuDRXFYeRPRn.uXJDs1noSIIG6D1eYLruCOM.V7g i4pqMMwLLRv04djbRJ.U9EMjEbhQfilkY6jc4aXAFxP3HpBL1CglGXU1QtPhZ.Ek1JwWs.N17XXv VKIviF6K.SRw2IGWywCK5QH92Ny5mWMvRNe.DSG5TEbt7Vzhs7RDTL58qDlEr9nuoNf9RZiqAGIV diL4n_CVj2MoorGVvCXGKlixH24X2Et1IQOxJ112BDXvv.AW1PWYjcWSmBnDD.RrKdHPIkIbvLjT V7hyCEhpuupcbVUfs93N1Bc2FqthoMAalCEl4pr6W_ID_I2Q41n5OCmzmqDfwmhcSd5fPmdxxp5v sywwFlSqIXvA6xi680I6CLi96It1yi9ET8gBAlaZo_HHlExDKhSSVA74e.5pTvzbDOTzlzOl.zaJ FR8IJ8KSXZl.p_w3ts5Q5gMgTujHyqU_7PzP1nVuTJmWBoN9_4jgA4hzEHp02zmlLKp3a.Y4k_eO b_may9UkD4lB7KoRCNo22YEio2lI4JrslLKf2Nwg0kS4ORzavJbWTDIgB4mGzGrgEvR3SXirs8Wv V2Ce9nWRKaysfpKlj6Tjyz6_8YXgGiRwrZsjK8K38TLIC32h.00giizI7xBKwSvM9IShdwGZwEAS Cyb9YGq_12FjWLE4a9hm1SMCuSUyIEjvLxgG4E036OtPaWUkCosfcyPtXqeaFSHB9qbitaxovEfI UQDDxCmAale_BTUa4ZgTXQw9Lyp7LTprKw2GLz6AEsgz2ycJZvvtZsgLoI2SF3nGDC2lGzID3AI5 3njt7x2zE5is6stulotrlka8MzxJMW3tYFRjzSlJMZVWIpoyVnv7GqZFiOx2rfRAiszpVrX4qu6D BlXfUQ_fibmzbY3RV4GCQR64fNzMLqdaXvjPeyubgOchQ9krqPa.FNG.DlsDA770Pwx.BZhTXl6. cgZBl6sVTSPYFDoTOW_D7e33anQ.5pC74OyY_bZUss9YlLwQSoL5ZwYxX3l.u4f1y7zrdodIDKvQ k2TpMwfOkH62uzSQFdMtSmb785lD4TEwXrwVYiwosJGIyeGoTnGg1r3MnqRQZUshAX38j02waYuC uK7E4RUU5.g.dFdfTnuc_nfE1BePvkuajvW_Jznianc0ZnHHPb0Vxubn7tjzbX0_Y78BjZXphxEE rSbM1vmAkhY4UsTHVTVdd0ZlyY05H0vKKBgavdwgYgL.M09ZyDW5lWr68uIO70t02L.3s68Nrkkc L9JClWG0GR1BSQ21oad0J9q5vp9rtY3zvxOI7cPvay1tvNKcle1XD78xfCRkFg7Xeqc9LbUODUNF 3iHG0bl2dwF43GCEB.eo1wNeDvxpp3vw5fsH46gnO3Xksg.EQ5dxwEHKmL6.wFxm0tG1lVkWtPVX T6nYIpdYjMsqeV9l6BLvKto2lrso0MxjcM21jpZ0sGcg8hVZavb_kOMP4cXWP7J0hQjP7tE5e9Y_ Z1BnZ04MQHdiFi9t0YTs0d9zvNVLnYwG9j._T24xSK3kKh8meDwBLyHoWoWIpwpczX2uE3IYaC7e Bf9wL.q9KghpGbgWXC.yUeeTPEu0jvVL3l_3sPHFaDmskWupApGQ9CNcW5Z8fIPxN8OIYlYjP1qE dDh5MCnHk4lPIecm1kI9UoURsXSvXlJxjLI2W8Dqk3KyaMKA1eiLa.R8uLQcNf4GpcNf0HOsIyHv dIjWo5CD0vyHUPFenjucSWI4l4v4oSdw6xmeZIuvINU8ZKMjlZM4tp3K1k7IVrpLDjtzjDbfhCmL PXgF1x897nocpboOhLZC7zDu1VUeUC2k_PAwaZvyY7LWnJZBOTvFK8IpaXRLmWJmfqQrQoE5QqyX yvnErjB8NWgL3h7RnHC8kt206bVsHxNGxONEOi_ya8shCizUJTU1OZ8Z01WR_Pvx6ne12 X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.ne1.yahoo.com with HTTP; Sun, 18 Dec 2022 13:45:52 +0000 Received: by hermes--production-sg3-b666c6484-7wpvn (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 6d778dc2dec0b955081d7599e1b644e1; Sun, 18 Dec 2022 13:45:46 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> In-Reply-To: <83bko0gact.fsf@HIDDEN> (Eli Zaretskii's message of "Sun, 18 Dec 2022 14:33:22 +0200") References: <CAGk_8X+jaz1kOcxx3j4kY3NN2UzWBX7_8+2eX3h7SR9gt-Cz4w@HIDDEN> <87edsxfop0.fsf@HIDDEN> <83359dgt7v.fsf@HIDDEN> <87a63lfcz7.fsf@HIDDEN> <83y1r5f6lh.fsf@HIDDEN> <875ye9f385.fsf@HIDDEN> <83fsddey48.fsf@HIDDEN> <871qowgbay.fsf@HIDDEN> <83bko0gact.fsf@HIDDEN> Date: Sun, 18 Dec 2022 21:45:38 +0800 Message-ID: <87wn6oesfx.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 1831 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: >> That code has problems signalling errors, unless it is okay for >> unblock_input to signal. > > I don't understand this part. Why and how is unblock_input part of > the picture? Because unblock_input can call process_pending_signals, and in doing so handle_async_input, which calls gobble_input (and thus the read_socket_hook.) As a result, it is not safe for any read_socket_hook to signal as long as it is not ok for unblock_input to signal as well. > So in the X/GTK build we have the same problem as with PGTK? If so, > why not change that as well, to work as I described, i.e. enqueue > events to our own event queue, which we will then read and process in > safe context? > > AFAIU, w32 already works like that. Does it not? It doesn't, see how w32_note_mouse_movement is called from w32_read_socket. > Yes, understood. But it just tells me that we need to change the > architecture so that the events delivered by the window-system are not > processed in callbacks we install to be called by the window-system, > they should be processed in our own safe context. The problem is note_mouse_highlight is simply not supposed to signal. It is a function called directly while handling async input as far back as Emacs 19, much like expose_frame. (IIRC back then there was a slightly different implementation in each of the *term.c files.) Moving note_mouse_highlight out of handle_one_xevent would lead to other bugs, since mouse movement must be processed in order wrt to other X events. For example, if an XI_Motion event arrives and is queued, and then a subsequent XI_Leave event arrives before that event has a chance to be processed ``in our own safe context'', note_mouse_highlight will be called after the mouse has left the frame, leading to stuck mouse highlight.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.