# HG changeset patch # User Karl Heuer # Date 896670724 0 # Node ID 41baef80bbbc4bc2b94d9479207148b826557f2f # Parent 87366acfb1e9fb6606469204d7499be24b5a5171 (Fredraw_frame): Don't erase frame or its glyph records if it hasn't got any. diff -r 87366acfb1e9 -r 41baef80bbbc src/dispnew.c --- a/src/dispnew.c Mon Jun 01 03:09:43 1998 +0000 +++ b/src/dispnew.c Mon Jun 01 03:12:04 1998 +0000 @@ -178,13 +178,22 @@ CHECK_LIVE_FRAME (frame, 0); f = XFRAME (frame); - update_begin (f); - if (FRAME_MSDOS_P (f)) - set_terminal_modes (); - clear_frame (); - clear_frame_records (f); - update_end (f); - fflush (stdout); + + /* Erase the frame and its glyph records--if it has any records. + It may have none, in the case of the terminal frame + that initially exists but is never used + when Emacs is using a window system. */ + if (FRAME_CURRENT_GLYPHS (f) != 0) + { + update_begin (f); + if (FRAME_MSDOS_P (f)) + set_terminal_modes (); + clear_frame (); + clear_frame_records (f); + update_end (f); + fflush (stdout); + } + windows_or_buffers_changed++; /* Mark all windows as INaccurate, so that every window will have its redisplay done. */