danapple@FLOTSAM.MIT.EDU (Daniel I. Applebaum) (01/10/89)
John Irwin is very correct that a 0 width line is legal. So the correction I sent out a couple days ago is not necessary, although I recommend it to be used on Parallax displays. On the other hand, the terminal window resize handling in 18.52 seems to be unnecessary when emacs uses its own X window. The is a bunch of code to handle SIGWINCH on 4.3 systems that gets in the way of running in an X window. The symptom I see is that sometimes when starting emacs, the window size (in rows and cols) doesn't get set to be proportional to the actual window size. These changes fix that. There is still an extra screen redraw when you first start the editor. My guess is that there is a direct call to redraw the screen, which is unnecessary since the window being created will have an expose event generated for it. Here are the diffs for src/dispnew.c 1121,1125c1121,1125 < if (inhibit_window_system) { < get_screen_size (&width, &height); < change_screen_size (height, width, 0); < signal (SIGWINCH, window_change_signal); < } --- > > get_screen_size (&width, &height); > change_screen_size (height, width, 0); > signal (SIGWINCH, window_change_signal); > 1141,1144d1140 < if (!inhibit_window_system) { < change_screen_size (delayed_screen_height, delayed_screen_width, 0); < return; < } 1191d1186 < 1405d1399 < else inhibit_window_system = 1; /* if no display */ 1407c1401 < --- > ; 1410d1403 < 1435c1428 < if (initialized) { --- > if (initialized) 1437,1441c1430 < if (inhibit_window_system) < signal (SIGWINCH, window_change_signal); < #ifndef CANNOT_DUMP < } < #endif /* CANNOT_DUMP */ --- > signal (SIGWINCH, window_change_signal); ---------------------------- Dan.