diff options
| author | Richard M. Stallman | 2003-01-13 08:20:09 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 2003-01-13 08:20:09 +0000 |
| commit | d86ba5c511933cc55c0fd35614d95cea28e993f3 (patch) | |
| tree | b1705746ef2e5d4bfe2e3daec84c9b010454395d /src | |
| parent | d57563b6120699ac06eb33ee1d2c161869965072 (diff) | |
| download | emacs-d86ba5c511933cc55c0fd35614d95cea28e993f3.tar.gz emacs-d86ba5c511933cc55c0fd35614d95cea28e993f3.zip | |
(command_loop_1): Don't redisplay directly if there's a post-command-hook.
Diffstat (limited to 'src')
| -rw-r--r-- | src/keyboard.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index f4593bdfbdd..bde6ac354a2 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -1583,6 +1583,10 @@ command_loop_1 () | |||
| 1583 | = window_display_table (XWINDOW (selected_window)); | 1583 | = window_display_table (XWINDOW (selected_window)); |
| 1584 | lose = FETCH_CHAR (PT_BYTE); | 1584 | lose = FETCH_CHAR (PT_BYTE); |
| 1585 | SET_PT (PT + 1); | 1585 | SET_PT (PT + 1); |
| 1586 | if (! NILP (Vpost_command_hook)) | ||
| 1587 | /* Put this before calling adjust_point_for_property | ||
| 1588 | so it will only get called once in any case. */ | ||
| 1589 | goto directly_done; | ||
| 1586 | adjust_point_for_property (last_point_position); | 1590 | adjust_point_for_property (last_point_position); |
| 1587 | already_adjusted = 1; | 1591 | already_adjusted = 1; |
| 1588 | if (PT == last_point_position + 1 | 1592 | if (PT == last_point_position + 1 |
| @@ -1615,6 +1619,8 @@ command_loop_1 () | |||
| 1615 | = window_display_table (XWINDOW (selected_window)); | 1619 | = window_display_table (XWINDOW (selected_window)); |
| 1616 | SET_PT (PT - 1); | 1620 | SET_PT (PT - 1); |
| 1617 | lose = FETCH_CHAR (PT_BYTE); | 1621 | lose = FETCH_CHAR (PT_BYTE); |
| 1622 | if (! NILP (Vpost_command_hook)) | ||
| 1623 | goto directly_done; | ||
| 1618 | adjust_point_for_property (last_point_position); | 1624 | adjust_point_for_property (last_point_position); |
| 1619 | already_adjusted = 1; | 1625 | already_adjusted = 1; |
| 1620 | if (PT == last_point_position - 1 | 1626 | if (PT == last_point_position - 1 |
| @@ -1643,9 +1649,9 @@ command_loop_1 () | |||
| 1643 | && NATNUMP (last_command_char) | 1649 | && NATNUMP (last_command_char) |
| 1644 | && CHAR_VALID_P (XFASTINT (last_command_char), 0)) | 1650 | && CHAR_VALID_P (XFASTINT (last_command_char), 0)) |
| 1645 | { | 1651 | { |
| 1646 | unsigned int c = | 1652 | unsigned int c |
| 1647 | translate_char (Vtranslation_table_for_input, | 1653 | = translate_char (Vtranslation_table_for_input, |
| 1648 | XFASTINT (last_command_char), 0, 0, 0); | 1654 | XFASTINT (last_command_char), 0, 0, 0); |
| 1649 | int value; | 1655 | int value; |
| 1650 | if (NILP (Vexecuting_macro) | 1656 | if (NILP (Vexecuting_macro) |
| 1651 | && !EQ (minibuf_window, selected_window)) | 1657 | && !EQ (minibuf_window, selected_window)) |