diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 33 | ||||
| -rw-r--r-- | src/cmds.c | 3 | ||||
| -rw-r--r-- | src/dispnew.c | 3 | ||||
| -rw-r--r-- | src/xdisp.c | 2 |
4 files changed, 30 insertions, 11 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index e3cf7546962..d4f654a1028 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,18 @@ | |||
| 1 | 2011-08-23 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * dispnew.c (buffer_posn_from_coords): Use buf_charpos_to_bytepos | ||
| 4 | instead of CHAR_TO_BYTE. Fixes a crash when a completion | ||
| 5 | candidate is selected by the mouse, and that candidate has a | ||
| 6 | composed character under the mouse. | ||
| 7 | |||
| 8 | * xdisp.c (x_produce_glyphs): Set it->nglyphs to 1. Fixes pixel | ||
| 9 | coordinates reported by pos-visible-in-window-p for a composed | ||
| 10 | character in column zero. | ||
| 11 | |||
| 12 | 2011-08-23 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 13 | |||
| 14 | * cmds.c (Fself_insert_command): Mention post-self-insert-hook. | ||
| 15 | |||
| 1 | 2011-08-22 Eli Zaretskii <eliz@gnu.org> | 16 | 2011-08-22 Eli Zaretskii <eliz@gnu.org> |
| 2 | 17 | ||
| 3 | * xdisp.c (BUFFER_POS_REACHED_P): If this is a composition, | 18 | * xdisp.c (BUFFER_POS_REACHED_P): If this is a composition, |
| @@ -45,8 +60,8 @@ | |||
| 45 | 2011-08-17 Chong Yidong <cyd@stupidchicken.com> | 60 | 2011-08-17 Chong Yidong <cyd@stupidchicken.com> |
| 46 | 61 | ||
| 47 | * eval.c (internal_condition_case, internal_condition_case_1) | 62 | * eval.c (internal_condition_case, internal_condition_case_1) |
| 48 | (internal_condition_case_2, internal_condition_case_n): Remove | 63 | (internal_condition_case_2, internal_condition_case_n): |
| 49 | unnecessary aborts (Bug#9081). | 64 | Remove unnecessary aborts (Bug#9081). |
| 50 | 65 | ||
| 51 | 2011-08-17 Eli Zaretskii <eliz@gnu.org> | 66 | 2011-08-17 Eli Zaretskii <eliz@gnu.org> |
| 52 | 67 | ||
| @@ -69,8 +84,8 @@ | |||
| 69 | * unexcw.c ( __malloc_initialized): Declare external variable. | 84 | * unexcw.c ( __malloc_initialized): Declare external variable. |
| 70 | (fixup_executable): Force the dumped emacs to reinitialize malloc. | 85 | (fixup_executable): Force the dumped emacs to reinitialize malloc. |
| 71 | 86 | ||
| 72 | * gmalloc.c [CYGWIN] (bss_sbrk_heapbase, bss_sbrk_heapinfo): New | 87 | * gmalloc.c [CYGWIN] (bss_sbrk_heapbase, bss_sbrk_heapinfo): |
| 73 | variables. | 88 | New variables. |
| 74 | (malloc_initialize_1) [CYGWIN]: Prepare for reinitializing the | 89 | (malloc_initialize_1) [CYGWIN]: Prepare for reinitializing the |
| 75 | dumped emacs. | 90 | dumped emacs. |
| 76 | (_free_internal_nolock) [CYGWIN]: Ignore requests to free storage | 91 | (_free_internal_nolock) [CYGWIN]: Ignore requests to free storage |
| @@ -172,8 +187,8 @@ | |||
| 172 | * xdisp.c (iterate_out_of_display_property): xassert that | 187 | * xdisp.c (iterate_out_of_display_property): xassert that |
| 173 | IT->position is set to within IT->object's boundaries. Break from | 188 | IT->position is set to within IT->object's boundaries. Break from |
| 174 | the loop as soon as EOB is reached; avoids infloops in redisplay | 189 | the loop as soon as EOB is reached; avoids infloops in redisplay |
| 175 | when IT->position is set up wrongly due to some bug. Set | 190 | when IT->position is set up wrongly due to some bug. |
| 176 | IT->current to match the bidi iterator unconditionally. | 191 | Set IT->current to match the bidi iterator unconditionally. |
| 177 | (push_display_prop): Allow GET_FROM_STRING as IT->method on | 192 | (push_display_prop): Allow GET_FROM_STRING as IT->method on |
| 178 | entry. Force push_it to save on the stack the current | 193 | entry. Force push_it to save on the stack the current |
| 179 | buffer/string position, to be restored by pop_it. Fix flags in | 194 | buffer/string position, to be restored by pop_it. Fix flags in |
| @@ -196,8 +211,8 @@ | |||
| 196 | 2011-08-08 Eli Zaretskii <eliz@gnu.org> | 211 | 2011-08-08 Eli Zaretskii <eliz@gnu.org> |
| 197 | 212 | ||
| 198 | * xdisp.c (forward_to_next_line_start): Allow to use the | 213 | * xdisp.c (forward_to_next_line_start): Allow to use the |
| 199 | no-display-properties-and-no-overlays under bidi display. Set | 214 | no-display-properties-and-no-overlays under bidi display. |
| 200 | disp_pos in the bidi iterator to avoid searches for display | 215 | Set disp_pos in the bidi iterator to avoid searches for display |
| 201 | properties and overlays. | 216 | properties and overlays. |
| 202 | 217 | ||
| 203 | 2011-08-08 Chong Yidong <cyd@stupidchicken.com> | 218 | 2011-08-08 Chong Yidong <cyd@stupidchicken.com> |
| @@ -235,7 +250,7 @@ | |||
| 235 | * bidi.c <bidi_cache_total_alloc>: Now static. | 250 | * bidi.c <bidi_cache_total_alloc>: Now static. |
| 236 | (bidi_initialize): Initialize bidi_cache_total_alloc. | 251 | (bidi_initialize): Initialize bidi_cache_total_alloc. |
| 237 | 252 | ||
| 238 | *xdisp.c (display_line): Release buffer allocated for shelved bidi | 253 | * xdisp.c (display_line): Release buffer allocated for shelved bidi |
| 239 | cache. (Bug#9221) | 254 | cache. (Bug#9221) |
| 240 | 255 | ||
| 241 | * bidi.c (bidi_shelve_cache, bidi_unshelve_cache): Track total | 256 | * bidi.c (bidi_shelve_cache, bidi_unshelve_cache): Track total |
diff --git a/src/cmds.c b/src/cmds.c index f49cfc221be..c079ad7168f 100644 --- a/src/cmds.c +++ b/src/cmds.c | |||
| @@ -271,7 +271,8 @@ Whichever character you type to run this command is inserted. | |||
| 271 | Before insertion, `expand-abbrev' is executed if the inserted character does | 271 | Before insertion, `expand-abbrev' is executed if the inserted character does |
| 272 | not have word syntax and the previous character in the buffer does. | 272 | not have word syntax and the previous character in the buffer does. |
| 273 | After insertion, the value of `auto-fill-function' is called if the | 273 | After insertion, the value of `auto-fill-function' is called if the |
| 274 | `auto-fill-chars' table has a non-nil value for the inserted character. */) | 274 | `auto-fill-chars' table has a non-nil value for the inserted character. |
| 275 | At the end, it runs `post-self-insert-hook'. */) | ||
| 275 | (Lisp_Object n) | 276 | (Lisp_Object n) |
| 276 | { | 277 | { |
| 277 | int remove_boundary = 1; | 278 | int remove_boundary = 1; |
diff --git a/src/dispnew.c b/src/dispnew.c index 4cffc32b0d7..a09421a9f15 100644 --- a/src/dispnew.c +++ b/src/dispnew.c | |||
| @@ -5314,7 +5314,8 @@ buffer_posn_from_coords (struct window *w, int *x, int *y, struct display_pos *p | |||
| 5314 | if (STRINGP (it.string)) | 5314 | if (STRINGP (it.string)) |
| 5315 | BYTEPOS (pos->pos) = string_char_to_byte (string, CHARPOS (pos->pos)); | 5315 | BYTEPOS (pos->pos) = string_char_to_byte (string, CHARPOS (pos->pos)); |
| 5316 | else | 5316 | else |
| 5317 | BYTEPOS (pos->pos) = CHAR_TO_BYTE (CHARPOS (pos->pos)); | 5317 | BYTEPOS (pos->pos) = buf_charpos_to_bytepos (XBUFFER (w->buffer), |
| 5318 | CHARPOS (pos->pos)); | ||
| 5318 | } | 5319 | } |
| 5319 | 5320 | ||
| 5320 | #ifdef HAVE_WINDOW_SYSTEM | 5321 | #ifdef HAVE_WINDOW_SYSTEM |
diff --git a/src/xdisp.c b/src/xdisp.c index 5ce8cbf8d9b..6fbbc69a7ca 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -24292,6 +24292,8 @@ x_produce_glyphs (struct it *it) | |||
| 24292 | Lisp_Object gstring; | 24292 | Lisp_Object gstring; |
| 24293 | struct font_metrics metrics; | 24293 | struct font_metrics metrics; |
| 24294 | 24294 | ||
| 24295 | it->nglyphs = 1; | ||
| 24296 | |||
| 24295 | gstring = composition_gstring_from_id (it->cmp_it.id); | 24297 | gstring = composition_gstring_from_id (it->cmp_it.id); |
| 24296 | it->pixel_width | 24298 | it->pixel_width |
| 24297 | = composition_gstring_width (gstring, it->cmp_it.from, it->cmp_it.to, | 24299 | = composition_gstring_width (gstring, it->cmp_it.from, it->cmp_it.to, |