GNU bug report logs - #33294
xwidget-insert crashes Emacs

Previous Next

Package: emacs;

Reported by: Evgeny Zajcev <lg.zevlg <at> gmail.com>

Date: Tue, 6 Nov 2018 21:15:01 UTC

Severity: normal

Tags: fixed

Fixed in version 26.2

Done: Robert Pluim <rpluim <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #29 received at 33294 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Gemini Lasswell <gazally <at> runbox.com>, 33294 <at> debbugs.gnu.org,
 Evgeny Zajcev <lg.zevlg <at> gmail.com>, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#33294: xwidget-insert crashes Emacs
Date: Thu, 08 Nov 2018 17:21:45 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

> Or maybe it's a problem with type-of?  What does the following
> produce?
>
>   (type-of (make-xwidget 'webkit "*foo*" 320 240))

I think itʼs a problem with type-of

(type-of (make-xwidget 'webkit "*foo*" 320 240 "args"))

=>

Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:369
369	{
(gdb) bt
#0  0x000000000056e2a6 in terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:369
#1  0x0000000000595f20 in emacs_abort () at sysdep.c:2429
#2  0x00000000005fcd21 in Ftype_of (object=XIL(0x1580e45)) at data.c:278
#3  0x000000000061e04f in eval_sub (form=XIL(0x16a9173)) at eval.c:2324

(gdb) 
#3  0x000000000061e04f in eval_sub (form=XIL(0x16a9173)) at eval.c:2324
2324		      val = (XSUBR (fun)->function.a1 (argvals[0]));
(gdb) pp argvals[0]
[Thread 0x7fff8a990700 (LWP 7812) exited]
[New Thread 0x7fff8a990700 (LWP 7850)]
[New Thread 0x7fff8a18f700 (LWP 7851)]
#<xwidget >
(gdb) p XTYPE(argvals[0])
$1 = Lisp_Vectorlike
(gdb) p PSEUDOVECTOR_TYPE (XVECTOR (argvals[0]))
$2 = PVEC_XWIDGET

And type-of explicitly calls abort for that tag:

        /* "Impossible" cases.  */
	case PVEC_MISC_PTR:
        case PVEC_XWIDGET:
        case PVEC_OTHER:
        case PVEC_XWIDGET_VIEW:
        case PVEC_SUB_CHAR_TABLE:
        case PVEC_FREE: ;
        }
      emacs_abort ();

which Stefan added in 1b424533675341a2090b79a6ffc420ac6b179ce7

Robert




This bug report was last modified 6 years and 256 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.