diff options
| author | Gerd Möllmann | 2025-01-29 08:28:58 +0100 |
|---|---|---|
| committer | Gerd Möllmann | 2025-01-30 05:41:12 +0100 |
| commit | 6cf479931d1adc03661116ef827f77fdc615db22 (patch) | |
| tree | 8c55c000fe709c911cb86f244ff4c33ee1caeecb /src | |
| parent | b34c069d8250e9557d5ef5e7997a5a7e370c7ad2 (diff) | |
| download | emacs-6cf479931d1adc03661116ef827f77fdc615db22.tar.gz emacs-6cf479931d1adc03661116ef827f77fdc615db22.zip | |
Don't use selected frame in tty_set_cursor (bug#75056)
* src/dispnew.c (tty_set_cursor): Add frmae parameter.
(write_matrix): Pass to the updated frame to tty_set_cursor.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dispnew.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/dispnew.c b/src/dispnew.c index d1e731e69f8..6571761b7a9 100644 --- a/src/dispnew.c +++ b/src/dispnew.c | |||
| @@ -5591,10 +5591,8 @@ scrolling_window (struct window *w, int tab_line_p) | |||
| 5591 | ************************************************************************/ | 5591 | ************************************************************************/ |
| 5592 | 5592 | ||
| 5593 | static void | 5593 | static void |
| 5594 | tty_set_cursor (void) | 5594 | tty_set_cursor (struct frame *f) |
| 5595 | { | 5595 | { |
| 5596 | struct frame *f = SELECTED_FRAME (); | ||
| 5597 | |||
| 5598 | if ((cursor_in_echo_area | 5596 | if ((cursor_in_echo_area |
| 5599 | /* If we are showing a message instead of the mini-buffer, | 5597 | /* If we are showing a message instead of the mini-buffer, |
| 5600 | show the cursor for the message instead of for the | 5598 | show the cursor for the message instead of for the |
| @@ -5656,7 +5654,7 @@ tty_set_cursor (void) | |||
| 5656 | else | 5654 | else |
| 5657 | { | 5655 | { |
| 5658 | /* We have only one cursor on terminal frames. Use it to | 5656 | /* We have only one cursor on terminal frames. Use it to |
| 5659 | display the cursor of the selected window. */ | 5657 | display the cursor of the selected window of the frame. */ |
| 5660 | struct window *w = XWINDOW (FRAME_SELECTED_WINDOW (f)); | 5658 | struct window *w = XWINDOW (FRAME_SELECTED_WINDOW (f)); |
| 5661 | if (w->cursor.vpos >= 0 | 5659 | if (w->cursor.vpos >= 0 |
| 5662 | /* The cursor vpos may be temporarily out of bounds | 5660 | /* The cursor vpos may be temporarily out of bounds |
| @@ -5709,7 +5707,7 @@ write_matrix (struct frame *f, bool inhibit_id_p, | |||
| 5709 | 5707 | ||
| 5710 | /* Now just clean up termcap drivers and set cursor, etc. */ | 5708 | /* Now just clean up termcap drivers and set cursor, etc. */ |
| 5711 | if (set_cursor_p) | 5709 | if (set_cursor_p) |
| 5712 | tty_set_cursor (); | 5710 | tty_set_cursor (f); |
| 5713 | } | 5711 | } |
| 5714 | 5712 | ||
| 5715 | /* Do line insertions/deletions on frame F for frame-based redisplay. */ | 5713 | /* Do line insertions/deletions on frame F for frame-based redisplay. */ |