This file is part of GNU Emacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA. */
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#include <stdio.h>
struct terminal **tp;
Lisp_Object tail, frame;
- /* Protect against recursive calls. Fdelete_frame calls the
+ /* Protect against recursive calls. delete_frame calls the
delete_terminal_hook when we delete our last frame. */
if (!terminal->name)
return;
struct frame *f = XFRAME (frame);
if (FRAME_LIVE_P (f) && f->terminal == terminal)
{
- /* Maybe this should pass Qnoelisp rather than Qt? */
- Fdelete_frame (frame, Qt);
+ /* Pass Qnoelisp rather than Qt. */
+ delete_frame (frame, Qnoelisp);
}
}
terminal->keyboard_coding = NULL;
xfree (terminal->terminal_coding);
terminal->terminal_coding = NULL;
-
-#ifdef MULTI_KBOARD
+
if (terminal->kboard && --terminal->kboard->reference_count == 0)
{
delete_kboard (terminal->kboard);
terminal->kboard = NULL;
}
-#endif
}
Lisp_Object Qrun_hook_with_args;
struct terminal *p = terminal_list;
while (p && (p == t || !TERMINAL_ACTIVE_P (p)))
p = p->next_terminal;
-
+
if (!p)
error ("Attempt to delete the sole active display terminal");
}
Lisp_Object object;
{
struct terminal *t;
-
+
t = get_terminal (object, 0);
if (!t)
return Qpc;
case output_mac:
return Qmac;
+ case output_ns:
+ return Qns;
default:
abort ();
}
initial_terminal = create_terminal ();
initial_terminal->type = output_initial;
initial_terminal->name = xstrdup ("initial_terminal");
-#ifdef MULTI_KBOARD
initial_terminal->kboard = initial_kboard;
-#endif
initial_terminal->delete_terminal_hook = &delete_initial_terminal;
/* All other hooks are NULL. */