[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/xdisp.c
From: |
Richard M. Stallman |
Subject: |
[Emacs-diffs] Changes to emacs/src/xdisp.c |
Date: |
Sun, 16 Dec 2001 15:02:02 -0500 |
Index: emacs/src/xdisp.c
diff -c emacs/src/xdisp.c:1.714 emacs/src/xdisp.c:1.715
*** emacs/src/xdisp.c:1.714 Wed Dec 12 17:27:28 2001
--- emacs/src/xdisp.c Sun Dec 16 15:02:01 2001
***************
*** 52,58 ****
+---------------------------------+
| |
| V
! +--------------+ redisplay() +----------------+
| Lisp machine |---------------->| Redisplay code |<--+
+--------------+ (xdisp.c) +----------------+ |
^ | |
--- 52,58 ----
+---------------------------------+
| |
| V
! +--------------+ redisplay +----------------+
| Lisp machine |---------------->| Redisplay code |<--+
+--------------+ (xdisp.c) +----------------+ |
^ | |
***************
*** 593,598 ****
--- 593,602 ----
Lisp_Object Vresize_mini_windows;
+ /* Buffer being redisplayed -- for redisplay_window_error. */
+
+ struct buffer *displayed_buffer;
+
/* Value returned from text property handlers (see below). */
enum prop_handled
***************
*** 733,738 ****
--- 737,745 ----
static int echo_area_display P_ ((int));
static void redisplay_windows P_ ((Lisp_Object));
static void redisplay_window P_ ((Lisp_Object, int));
+ static Lisp_Object redisplay_window_error ();
+ static Lisp_Object redisplay_window_0 P_ ((Lisp_Object));
+ static Lisp_Object redisplay_window_1 P_ ((Lisp_Object));
static void update_menu_bar P_ ((struct frame *, int));
static int try_window_reusing_current_matrix P_ ((struct window *));
static int try_window_id P_ ((struct window *));
***************
*** 8883,8889 ****
Lisp_Object mini_window;
struct frame *mini_frame;
! redisplay_window (selected_window, 1);
/* Compare desired and current matrices, perform output. */
update:
--- 8890,8898 ----
Lisp_Object mini_window;
struct frame *mini_frame;
! displayed_buffer = XBUFFER (XWINDOW (selected_window)->buffer);
! internal_condition_case_1 (redisplay_window_1, selected_window, Qerror,
! redisplay_window_error);
/* Compare desired and current matrices, perform output. */
update:
***************
*** 9219,9231 ****
else if (!NILP (w->vchild))
redisplay_windows (w->vchild);
else
! redisplay_window (window, 0);
window = w->next;
}
}
/* Set cursor position of W. PT is assumed to be displayed in ROW.
DELTA is the number of bytes by which positions recorded in ROW
differ from current buffer positions. */
--- 9228,9268 ----
else if (!NILP (w->vchild))
redisplay_windows (w->vchild);
else
! {
! displayed_buffer = XBUFFER (w->buffer);
! internal_condition_case_1 (redisplay_window_0, window, Qerror,
! redisplay_window_error);
! }
window = w->next;
}
}
+ static Lisp_Object
+ redisplay_window_error ()
+ {
+ displayed_buffer->display_error_modiff = BUF_MODIFF (displayed_buffer);
+ return Qnil;
+ }
+
+ static Lisp_Object
+ redisplay_window_0 (window)
+ Lisp_Object window;
+ {
+ if (displayed_buffer->display_error_modiff < BUF_MODIFF (displayed_buffer))
+ redisplay_window (window, 0);
+ return Qnil;
+ }
+ static Lisp_Object
+ redisplay_window_1 (window)
+ Lisp_Object window;
+ {
+ if (displayed_buffer->display_error_modiff < BUF_MODIFF (displayed_buffer))
+ redisplay_window (window, 1);
+ return Qnil;
+ }
+
/* Set cursor position of W. PT is assumed to be displayed in ROW.
DELTA is the number of bytes by which positions recorded in ROW
differ from current buffer positions. */
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Pavel Janík, 2001/12/02
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Pavel Janík, 2001/12/03
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Andreas Schwab, 2001/12/07
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Andreas Schwab, 2001/12/09
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Gerd Moellmann, 2001/12/12
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Gerd Moellmann, 2001/12/12
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Richard M. Stallman, 2001/12/12
- [Emacs-diffs] Changes to emacs/src/xdisp.c,
Richard M. Stallman <=
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Pavel Janík, 2001/12/18
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Pavel Janík, 2001/12/20
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Pavel Janík, 2001/12/24
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Gerd Moellmann, 2001/12/28
- [Emacs-diffs] Changes to emacs/src/xdisp.c, Gerd Moellmann, 2001/12/28