forked from pool/emacs
b169acd5eb
OBS-URL: https://build.opensuse.org/package/show/editors/emacs?expand=0&rev=f18c0fa1a7a27a2fa30f3767683ae6e2
72 lines
2.0 KiB
Diff
72 lines
2.0 KiB
Diff
--- src/term.c
|
|
+++ src/term.c 2009-11-26 14:09:38.631431310 +0100
|
|
@@ -37,6 +37,7 @@ along with GNU Emacs. If not, see <http
|
|
|
|
#include <signal.h>
|
|
#include <stdarg.h>
|
|
+#include <setjmp.h>
|
|
|
|
#include "lisp.h"
|
|
#include "termchar.h"
|
|
@@ -1650,7 +1651,7 @@ produce_glyphs (it)
|
|
if (unibyte_display_via_language_environment
|
|
&& (it->c >= 0240))
|
|
{
|
|
- it->char_to_display = unibyte_char_to_multibyte (it->c);
|
|
+ it->char_to_display = BYTE8_TO_CHAR (it->c);
|
|
it->pixel_width = CHAR_WIDTH (it->char_to_display);
|
|
it->nglyphs = it->pixel_width;
|
|
if (it->glyph_row)
|
|
@@ -3467,9 +3465,7 @@ init_tty (char *name, char *terminal_typ
|
|
|
|
tty->type = xstrdup (terminal_type);
|
|
|
|
-#ifdef subprocesses
|
|
add_keyboard_wait_descriptor (fileno (tty->input));
|
|
-#endif
|
|
|
|
#endif /* !DOS_NT */
|
|
|
|
@@ -3959,8 +3957,6 @@ static void
|
|
delete_tty (struct terminal *terminal)
|
|
{
|
|
struct tty_display_info *tty;
|
|
- Lisp_Object tail, frame;
|
|
- int last_terminal;
|
|
|
|
/* Protect against recursive calls. delete_frame in
|
|
delete_terminal calls us back when it deletes our last frame. */
|
|
@@ -3972,19 +3968,6 @@ delete_tty (struct terminal *terminal)
|
|
|
|
tty = terminal->display_info.tty;
|
|
|
|
- last_terminal = 1;
|
|
- FOR_EACH_FRAME (tail, frame)
|
|
- {
|
|
- struct frame *f = XFRAME (frame);
|
|
- if (FRAME_LIVE_P (f) && (!FRAME_TERMCAP_P (f) || FRAME_TTY (f) != tty))
|
|
- {
|
|
- last_terminal = 0;
|
|
- break;
|
|
- }
|
|
- }
|
|
- if (last_terminal)
|
|
- error ("Attempt to delete the sole terminal device with live frames");
|
|
-
|
|
if (tty == tty_list)
|
|
tty_list = tty->next;
|
|
else
|
|
@@ -4025,10 +4008,8 @@ delete_tty (struct terminal *terminal)
|
|
|
|
xfree (tty->old_tty);
|
|
xfree (tty->Wcm);
|
|
- if (tty->termcap_strings_buffer)
|
|
- xfree (tty->termcap_strings_buffer);
|
|
- if (tty->termcap_term_buffer)
|
|
- xfree (tty->termcap_term_buffer);
|
|
+ xfree (tty->termcap_strings_buffer);
|
|
+ xfree (tty->termcap_term_buffer);
|
|
|
|
bzero (tty, sizeof (struct tty_display_info));
|
|
xfree (tty);
|