mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-21 15:40:59 -08:00
(mac_handle_text_input_event):
Check if display is up to date before accessing current matrix.
This commit is contained in:
parent
0169e2e18a
commit
2aebd8738f
2 changed files with 18 additions and 1 deletions
|
|
@ -1,3 +1,10 @@
|
|||
2008-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* macterm.c (x_load_font): Round average width to the nearest integer.
|
||||
|
||||
* mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
|
||||
Check if display is up to date before accessing current matrix.
|
||||
|
||||
2008-08-15 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* process.c (make_process): Initialize kill_without_query struct
|
||||
|
|
|
|||
|
|
@ -570,6 +570,7 @@ mac_handle_text_input_event (next_handler, event, data)
|
|||
#ifndef MAC_OSX
|
||||
break;
|
||||
#else /* MAC_OSX */
|
||||
struct buffer *b;
|
||||
CFRange sel_range;
|
||||
int charpos;
|
||||
int hpos, vpos, x, y;
|
||||
|
|
@ -579,8 +580,17 @@ mac_handle_text_input_event (next_handler, event, data)
|
|||
|
||||
f = mac_focus_frame (&one_mac_display_info);
|
||||
w = XWINDOW (f->selected_window);
|
||||
b = XBUFFER (w->buffer);
|
||||
|
||||
/* Are we in a window whose display is up to date?
|
||||
And verify the buffer's text has not changed. */
|
||||
if (!(EQ (w->window_end_valid, w->buffer)
|
||||
&& XINT (w->last_modified) == BUF_MODIFF (b)
|
||||
&& XINT (w->last_overlay_modified) == BUF_OVERLAY_MODIFF (b)))
|
||||
break;
|
||||
|
||||
mac_get_selected_range (w, &sel_range);
|
||||
charpos = (BUF_BEGV (XBUFFER (w->buffer)) + sel_range.location
|
||||
charpos = (BUF_BEGV (b) + sel_range.location
|
||||
+ byte_offset / (long) sizeof (UniChar));
|
||||
|
||||
if (!fast_find_position (w, charpos, &hpos, &vpos, &x, &y, Qnil))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue