[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: server.el test failures (was: Re: bug#9800: Incomplete truncated fil

From: Jim Porter
Subject: Re: server.el test failures (was: Re: bug#9800: Incomplete truncated file buffers from the /proc filesystem)
Date: Fri, 24 Feb 2023 09:48:02 -0800

On 2/23/2023 11:52 PM, Eli Zaretskii wrote:
Date: Thu, 23 Feb 2023 18:20:39 -0800
From: Jim Porter <jporterbugs@gmail.com>
Cc: emacs-devel@gnu.org

The segfault is in FACE_FROM_ID_OR_NULL, called from
Finternal_merge_in_global_face. It happens because the face_cache is
null during these tests (since Emacs is noninteractive).

The attached patch fixes the issue for me, though I'm not totally sure
it's the *right* fix. Any thoughts? (I'm also not 100% sure this is the
same issue you're seeing...)

Please show the C backtrace from the crash, and include the Lisp
backtrace (the "xbacktrace" command in src/.gdbinit).

Ok, I ran Emacs (master branch) under GDB with the following arguments:

-Q -L ":../test" -l ert -l lisp/server-tests.el --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag :unstable) (tag :nativecomp)))))'

Attached is the backtrace from 'xbacktrace'.

I think this only occurs when starting the Emacs server in a batch-mode Emacs process and then starting a client via "emacsclient -c". I see the segfault when running any of the tests in test/lisp/server-tests.el that create a frame (e.g. 'server-tests/server-start/stop-prompt-with-client').

This also only seems to occur if the first face that 'face-set-after-frame-default' passes to 'internal-merge-in-global-face' is the default face.

Attachment: gdb.txt
Description: Text document

reply via email to

[Prev in Thread] Current Thread [Next in Thread]