aboutsummaryrefslogtreecommitdiffstats
path: root/src/term.c
diff options
context:
space:
mode:
authorKenichi Handa2003-09-08 11:56:09 +0000
committerKenichi Handa2003-09-08 11:56:09 +0000
commit463f5630a5e7cbe7f042bc1175d1fa1c4e98860f (patch)
tree3287d0c628fea2249abf4635b3a4f45bedd6f8c4 /src/term.c
parent4256310de631bd57c78b88b5131caa073315b3d7 (diff)
downloademacs-463f5630a5e7cbe7f042bc1175d1fa1c4e98860f.tar.gz
emacs-463f5630a5e7cbe7f042bc1175d1fa1c4e98860f.zip
New directory
Diffstat (limited to 'src/term.c')
-rw-r--r--src/term.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/term.c b/src/term.c
index 1f4ceaec627..829f2d88e6b 100644
--- a/src/term.c
+++ b/src/term.c
@@ -2159,8 +2159,7 @@ term_init (terminal_type)
2159{ 2159{
2160 char *area; 2160 char *area;
2161 char **address = &area; 2161 char **address = &area;
2162 char *buffer = NULL; 2162 char buffer[2044];
2163 int buffer_size = 4096;
2164 register char *p; 2163 register char *p;
2165 int status; 2164 int status;
2166 struct frame *sf = XFRAME (selected_frame); 2165 struct frame *sf = XFRAME (selected_frame);
@@ -2172,6 +2171,9 @@ term_init (terminal_type)
2172 2171
2173 area = (char *) xmalloc (2044); 2172 area = (char *) xmalloc (2044);
2174 2173
2174 if (area == 0)
2175 abort ();
2176
2175 FrameRows = FRAME_LINES (sf); 2177 FrameRows = FRAME_LINES (sf);
2176 FrameCols = FRAME_COLS (sf); 2178 FrameCols = FRAME_COLS (sf);
2177 specified_window = FRAME_LINES (sf); 2179 specified_window = FRAME_LINES (sf);
@@ -2200,7 +2202,6 @@ term_init (terminal_type)
2200 2202
2201 Wcm_clear (); 2203 Wcm_clear ();
2202 2204
2203 buffer = (char *) xmalloc (buffer_size);
2204 status = tgetent (buffer, terminal_type); 2205 status = tgetent (buffer, terminal_type);
2205 if (status < 0) 2206 if (status < 0)
2206 { 2207 {
@@ -2228,13 +2229,13 @@ to do `unset TERMCAP' (C-shell: `unsetenv TERMCAP') as well.",
2228 terminal_type); 2229 terminal_type);
2229#endif 2230#endif
2230 } 2231 }
2231 2232#ifdef TERMINFO
2232#ifndef TERMINFO 2233 area = (char *) xmalloc (2044);
2233 if (strlen (buffer) >= buffer_size) 2234#else
2235 area = (char *) xmalloc (strlen (buffer));
2236#endif /* not TERMINFO */
2237 if (area == 0)
2234 abort (); 2238 abort ();
2235 buffer_size = strlen (buffer);
2236#endif
2237 area = (char *) xmalloc (buffer_size);
2238 2239
2239 TS_ins_line = tgetstr ("al", address); 2240 TS_ins_line = tgetstr ("al", address);
2240 TS_ins_multi_lines = tgetstr ("AL", address); 2241 TS_ins_multi_lines = tgetstr ("AL", address);
@@ -2559,8 +2560,6 @@ to do `unset TERMCAP' (C-shell: `unsetenv TERMCAP') as well.",
2559 FRAME_CAN_HAVE_SCROLL_BARS (sf) = 0; 2560 FRAME_CAN_HAVE_SCROLL_BARS (sf) = 0;
2560 FRAME_VERTICAL_SCROLL_BAR_TYPE (sf) = vertical_scroll_bar_none; 2561 FRAME_VERTICAL_SCROLL_BAR_TYPE (sf) = vertical_scroll_bar_none;
2561#endif /* WINDOWSNT */ 2562#endif /* WINDOWSNT */
2562
2563 xfree (buffer);
2564} 2563}
2565 2564
2566/* VARARGS 1 */ 2565/* VARARGS 1 */
@@ -2596,5 +2595,3 @@ The function should accept no arguments. */);
2596 defsubr (&Stty_display_color_cells); 2595 defsubr (&Stty_display_color_cells);
2597} 2596}
2598 2597
2599/* arch-tag: 498e7449-6f2e-45e2-91dd-b7d4ca488193
2600 (do not change this comment) */