emacs-pretest-bug
[Top][All Lists]
Advanced

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

Re: SIGABRT while stress-testing with gnuclient/gnudoit


From: Alex Schroeder
Subject: Re: SIGABRT while stress-testing with gnuclient/gnudoit
Date: Mon, 06 Jan 2003 21:07:00 +0100
User-agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2.92 (i686-pc-linux-gnu)

Richard Stallman <address@hidden> writes:

> You didn't tell me to use C-x C-e; I used C-j, which handles the
> output differently.  Now I understand the problem.
>
> Does this patch fix it?

I will try the patch as soon as possible.

In my original post I proposed an additional feature, however, which I
would like to consider again.

Is exiting emacs (cleanly or not) really the right thing for
delete-frame to do?

The documentation for delete-frame says:

    "A frame may not be deleted if its minibuffer is used by other
    frames.  Normally, you may not delete a frame if all other frames
    are invisible, but if the second optional argument FORCE is
    non-nil, you may do so.

Assume usage similar to emacsclient -- when we are done with editing,
we would like delete the current frame, even if this is the last
visible frame.  I do not think that we want to kill Emacs, however!
The situation is not that uncommon:

(In this example I assume that invisible means either all frames are
iconified, or on other displays -- perhaps the documentation string
could be more verbose on this issue!)

Now assume a running Emacs, iconified, or frames displaying on another
display.  Now I run an application similar to emacsclient -- it
creates a new frame on the local display, and when I'm done, I call
some elisp code that is supposed to delete this frame.  I really want
to delete the frame, but I do not want to kill Emacs just because the
other frames are invisible.  I therefore think that delete-frame
should never remove the last frame.

Alex.

> *** xdisp.c.~1.797.~  Sun Dec 22 16:13:49 2002
> --- xdisp.c   Sat Jan  4 14:05:35 2003
> ***************
> *** 6488,6493 ****
> --- 6488,6497 ----
>   setup_echo_area_for_printing (multibyte_p)
>        int multibyte_p;
>   {
> +   /* If we can't find an echo area any more, exit.  */
> +   if (! FRAME_LIVE_P (XFRAME (selected_frame)))
> +     Fkill_emacs (Qnil);
> + 
>     ensure_echo_area_buffers ();
>   
>     if (!message_buf_print)




reply via email to

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