diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/xdisp.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 9c9dbe878a6..d21e1db5d41 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -2953,8 +2953,20 @@ display_mode_line (w) | |||
| 2953 | w->column_number_displayed = Qnil; | 2953 | w->column_number_displayed = Qnil; |
| 2954 | 2954 | ||
| 2955 | get_display_line (f, vpos, left); | 2955 | get_display_line (f, vpos, left); |
| 2956 | display_mode_element (w, vpos, left, 0, right, right, | 2956 | #ifdef MULTI_PERDISPLAY |
| 2957 | current_buffer->mode_line_format); | 2957 | { |
| 2958 | /* Sigh, mode-line-format can reference display-local variables like | ||
| 2959 | defining-kbd-macro. Use the one associated with the frame we're | ||
| 2960 | updating. */ | ||
| 2961 | PERDISPLAY *orig_perdisplay = current_perdisplay; | ||
| 2962 | current_perdisplay = get_perdisplay (f); | ||
| 2963 | #endif | ||
| 2964 | display_mode_element (w, vpos, left, 0, right, right, | ||
| 2965 | current_buffer->mode_line_format); | ||
| 2966 | #ifdef MULTI_PERDISPLAY | ||
| 2967 | current_perdisplay = orig_perdisplay; | ||
| 2968 | } | ||
| 2969 | #endif | ||
| 2958 | FRAME_DESIRED_GLYPHS (f)->bufp[vpos] = 0; | 2970 | FRAME_DESIRED_GLYPHS (f)->bufp[vpos] = 0; |
| 2959 | 2971 | ||
| 2960 | /* Make the mode line inverse video if the entire line | 2972 | /* Make the mode line inverse video if the entire line |