diff options
| author | Paul Eggert | 2016-03-22 11:01:30 -0700 |
|---|---|---|
| committer | Paul Eggert | 2016-03-22 11:01:30 -0700 |
| commit | 37b9099068c10383e959ee366a52a22516846163 (patch) | |
| tree | f135528cdacc4313be84f7bf1ceade19327d5fe7 /src | |
| parent | 6bd1e2203486ace170f5de15cf7d66146fc8cc87 (diff) | |
| parent | 56df61712ac446d3dcd9c897f687cc74a04be314 (diff) | |
| download | emacs-37b9099068c10383e959ee366a52a22516846163.tar.gz emacs-37b9099068c10383e959ee366a52a22516846163.zip | |
-
Diffstat (limited to 'src')
| -rw-r--r-- | src/editfns.c | 6 | ||||
| -rw-r--r-- | src/image.c | 3 | ||||
| -rw-r--r-- | src/keyboard.c | 11 | ||||
| -rw-r--r-- | src/xdisp.c | 29 | ||||
| -rw-r--r-- | src/xfns.c | 2 |
5 files changed, 34 insertions, 17 deletions
diff --git a/src/editfns.c b/src/editfns.c index c6441c25af9..664a59e0721 100644 --- a/src/editfns.c +++ b/src/editfns.c | |||
| @@ -1456,7 +1456,7 @@ time_overflow (void) | |||
| 1456 | error ("Specified time is not representable"); | 1456 | error ("Specified time is not representable"); |
| 1457 | } | 1457 | } |
| 1458 | 1458 | ||
| 1459 | static void | 1459 | static _Noreturn void |
| 1460 | invalid_time (void) | 1460 | invalid_time (void) |
| 1461 | { | 1461 | { |
| 1462 | error ("Invalid time specification"); | 1462 | error ("Invalid time specification"); |
| @@ -1848,7 +1848,9 @@ lisp_time_struct (Lisp_Object specified_time, int *plen) | |||
| 1848 | Lisp_Object high, low, usec, psec; | 1848 | Lisp_Object high, low, usec, psec; |
| 1849 | struct lisp_time t; | 1849 | struct lisp_time t; |
| 1850 | int len = disassemble_lisp_time (specified_time, &high, &low, &usec, &psec); | 1850 | int len = disassemble_lisp_time (specified_time, &high, &low, &usec, &psec); |
| 1851 | int val = len ? decode_time_components (high, low, usec, psec, &t, 0) : 0; | 1851 | if (!len) |
| 1852 | invalid_time (); | ||
| 1853 | int val = decode_time_components (high, low, usec, psec, &t, 0); | ||
| 1852 | check_time_validity (val); | 1854 | check_time_validity (val); |
| 1853 | *plen = len; | 1855 | *plen = len; |
| 1854 | return t; | 1856 | return t; |
diff --git a/src/image.c b/src/image.c index bee066eb3fb..867450567c2 100644 --- a/src/image.c +++ b/src/image.c | |||
| @@ -1830,6 +1830,9 @@ cache_image (struct frame *f, struct image *img) | |||
| 1830 | struct image_cache *c = FRAME_IMAGE_CACHE (f); | 1830 | struct image_cache *c = FRAME_IMAGE_CACHE (f); |
| 1831 | ptrdiff_t i; | 1831 | ptrdiff_t i; |
| 1832 | 1832 | ||
| 1833 | if (!c) | ||
| 1834 | c = FRAME_IMAGE_CACHE (f) = make_image_cache (); | ||
| 1835 | |||
| 1833 | /* Find a free slot in c->images. */ | 1836 | /* Find a free slot in c->images. */ |
| 1834 | for (i = 0; i < c->used; ++i) | 1837 | for (i = 0; i < c->used; ++i) |
| 1835 | if (c->images[i] == NULL) | 1838 | if (c->images[i] == NULL) |
diff --git a/src/keyboard.c b/src/keyboard.c index b8e0a6d88ea..1a5dbd0f617 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -430,10 +430,9 @@ kset_system_key_syms (struct kboard *kb, Lisp_Object val) | |||
| 430 | static bool | 430 | static bool |
| 431 | echo_keystrokes_p (void) | 431 | echo_keystrokes_p (void) |
| 432 | { | 432 | { |
| 433 | return (!cursor_in_echo_area) | 433 | return (FLOATP (Vecho_keystrokes) ? XFLOAT_DATA (Vecho_keystrokes) > 0.0 |
| 434 | && (FLOATP (Vecho_keystrokes) ? XFLOAT_DATA (Vecho_keystrokes) > 0.0 | 434 | : INTEGERP (Vecho_keystrokes) ? XINT (Vecho_keystrokes) > 0 |
| 435 | : INTEGERP (Vecho_keystrokes) ? XINT (Vecho_keystrokes) > 0 | 435 | : false); |
| 436 | : false); | ||
| 437 | } | 436 | } |
| 438 | 437 | ||
| 439 | /* Add C to the echo string, without echoing it immediately. C can be | 438 | /* Add C to the echo string, without echoing it immediately. C can be |
| @@ -8901,7 +8900,9 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt, | |||
| 8901 | if (!echo_keystrokes_p ()) | 8900 | if (!echo_keystrokes_p ()) |
| 8902 | current_kboard->immediate_echo = false; | 8901 | current_kboard->immediate_echo = false; |
| 8903 | } | 8902 | } |
| 8904 | else if (echo_keystrokes_p ()) | 8903 | else if (cursor_in_echo_area /* FIXME: Not sure why we test this here, |
| 8904 | maybe we should just drop this test. */ | ||
| 8905 | && echo_keystrokes_p ()) | ||
| 8905 | /* This doesn't put in a dash if the echo buffer is empty, so | 8906 | /* This doesn't put in a dash if the echo buffer is empty, so |
| 8906 | you don't always see a dash hanging out in the minibuffer. */ | 8907 | you don't always see a dash hanging out in the minibuffer. */ |
| 8907 | echo_dash (); | 8908 | echo_dash (); |
diff --git a/src/xdisp.c b/src/xdisp.c index 123303ef8d8..7dc99e1c283 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -2946,7 +2946,7 @@ init_iterator (struct it *it, struct window *w, | |||
| 2946 | character properties needed for reordering are not yet | 2946 | character properties needed for reordering are not yet |
| 2947 | available. */ | 2947 | available. */ |
| 2948 | it->bidi_p = | 2948 | it->bidi_p = |
| 2949 | NILP (Vpurify_flag) | 2949 | !redisplay__inhibit_bidi |
| 2950 | && !NILP (BVAR (current_buffer, bidi_display_reordering)) | 2950 | && !NILP (BVAR (current_buffer, bidi_display_reordering)) |
| 2951 | && it->multibyte_p; | 2951 | && it->multibyte_p; |
| 2952 | 2952 | ||
| @@ -6641,7 +6641,7 @@ reseat_to_string (struct it *it, const char *s, Lisp_Object string, | |||
| 6641 | loading loadup.el, as the necessary character property tables are | 6641 | loading loadup.el, as the necessary character property tables are |
| 6642 | not yet available. */ | 6642 | not yet available. */ |
| 6643 | it->bidi_p = | 6643 | it->bidi_p = |
| 6644 | NILP (Vpurify_flag) | 6644 | !redisplay__inhibit_bidi |
| 6645 | && !NILP (BVAR (&buffer_defaults, bidi_display_reordering)); | 6645 | && !NILP (BVAR (&buffer_defaults, bidi_display_reordering)); |
| 6646 | 6646 | ||
| 6647 | if (s == NULL) | 6647 | if (s == NULL) |
| @@ -10531,8 +10531,8 @@ ensure_echo_area_buffers (void) | |||
| 10531 | suitable buffer from echo_buffer[] and clear it. | 10531 | suitable buffer from echo_buffer[] and clear it. |
| 10532 | 10532 | ||
| 10533 | If WHICH < 0, set echo_area_buffer[1] to echo_area_buffer[0], so | 10533 | If WHICH < 0, set echo_area_buffer[1] to echo_area_buffer[0], so |
| 10534 | that the current message becomes the last displayed one, make | 10534 | that the current message becomes the last displayed one, choose a |
| 10535 | choose a suitable buffer for echo_area_buffer[0], and clear it. | 10535 | suitable buffer for echo_area_buffer[0], and clear it. |
| 10536 | 10536 | ||
| 10537 | Value is what FN returns. */ | 10537 | Value is what FN returns. */ |
| 10538 | 10538 | ||
| @@ -10566,7 +10566,7 @@ with_echo_area_buffer (struct window *w, int which, | |||
| 10566 | echo_area_buffer[this_one] = Qnil; | 10566 | echo_area_buffer[this_one] = Qnil; |
| 10567 | } | 10567 | } |
| 10568 | 10568 | ||
| 10569 | /* Choose a suitable buffer from echo_buffer[] is we don't | 10569 | /* Choose a suitable buffer from echo_buffer[] if we don't |
| 10570 | have one. */ | 10570 | have one. */ |
| 10571 | if (NILP (echo_area_buffer[this_one])) | 10571 | if (NILP (echo_area_buffer[this_one])) |
| 10572 | { | 10572 | { |
| @@ -21194,7 +21194,7 @@ See also `bidi-paragraph-direction'. */) | |||
| 21194 | || NILP (BVAR (buf, enable_multibyte_characters)) | 21194 | || NILP (BVAR (buf, enable_multibyte_characters)) |
| 21195 | /* When we are loading loadup.el, the character property tables | 21195 | /* When we are loading loadup.el, the character property tables |
| 21196 | needed for bidi iteration are not yet available. */ | 21196 | needed for bidi iteration are not yet available. */ |
| 21197 | || !NILP (Vpurify_flag)) | 21197 | || redisplay__inhibit_bidi) |
| 21198 | return Qleft_to_right; | 21198 | return Qleft_to_right; |
| 21199 | else if (!NILP (BVAR (buf, bidi_paragraph_direction))) | 21199 | else if (!NILP (BVAR (buf, bidi_paragraph_direction))) |
| 21200 | return BVAR (buf, bidi_paragraph_direction); | 21200 | return BVAR (buf, bidi_paragraph_direction); |
| @@ -21318,7 +21318,7 @@ the `bidi-class' property of a character. */) | |||
| 21318 | /* When we are loading loadup.el, the character property | 21318 | /* When we are loading loadup.el, the character property |
| 21319 | tables needed for bidi iteration are not yet | 21319 | tables needed for bidi iteration are not yet |
| 21320 | available. */ | 21320 | available. */ |
| 21321 | || !NILP (Vpurify_flag)) | 21321 | || redisplay__inhibit_bidi) |
| 21322 | return Qnil; | 21322 | return Qnil; |
| 21323 | 21323 | ||
| 21324 | validate_subarray (object, from, to, SCHARS (object), &from_pos, &to_pos); | 21324 | validate_subarray (object, from, to, SCHARS (object), &from_pos, &to_pos); |
| @@ -21346,7 +21346,7 @@ the `bidi-class' property of a character. */) | |||
| 21346 | /* When we are loading loadup.el, the character property | 21346 | /* When we are loading loadup.el, the character property |
| 21347 | tables needed for bidi iteration are not yet | 21347 | tables needed for bidi iteration are not yet |
| 21348 | available. */ | 21348 | available. */ |
| 21349 | || !NILP (Vpurify_flag)) | 21349 | || redisplay__inhibit_bidi) |
| 21350 | return Qnil; | 21350 | return Qnil; |
| 21351 | 21351 | ||
| 21352 | set_buffer_temp (buf); | 21352 | set_buffer_temp (buf); |
| @@ -31552,7 +31552,12 @@ A value of t means resize them to fit the text displayed in them. | |||
| 31552 | A value of `grow-only', the default, means let mini-windows grow only; | 31552 | A value of `grow-only', the default, means let mini-windows grow only; |
| 31553 | they return to their normal size when the minibuffer is closed, or the | 31553 | they return to their normal size when the minibuffer is closed, or the |
| 31554 | echo area becomes empty. */); | 31554 | echo area becomes empty. */); |
| 31555 | Vresize_mini_windows = Qgrow_only; | 31555 | /* Contrary to the doc string, we initialize this to nil, so that |
| 31556 | loading loadup.el won't try to resize windows before loading | ||
| 31557 | window.el, where some functions we need to call for this live. | ||
| 31558 | We assign the 'grow-only' value right after loading window.el | ||
| 31559 | during loadup. */ | ||
| 31560 | Vresize_mini_windows = Qnil; | ||
| 31556 | 31561 | ||
| 31557 | DEFVAR_LISP ("blink-cursor-alist", Vblink_cursor_alist, | 31562 | DEFVAR_LISP ("blink-cursor-alist", Vblink_cursor_alist, |
| 31558 | doc: /* Alist specifying how to blink the cursor off. | 31563 | doc: /* Alist specifying how to blink the cursor off. |
| @@ -31760,6 +31765,12 @@ display table takes effect; in this case, Emacs does not consult | |||
| 31760 | DEFVAR_LISP ("redisplay--variables", Vredisplay__variables, | 31765 | DEFVAR_LISP ("redisplay--variables", Vredisplay__variables, |
| 31761 | doc: /* A hash-table of variables changing which triggers a thorough redisplay. */); | 31766 | doc: /* A hash-table of variables changing which triggers a thorough redisplay. */); |
| 31762 | Vredisplay__variables = Qnil; | 31767 | Vredisplay__variables = Qnil; |
| 31768 | |||
| 31769 | DEFVAR_BOOL ("redisplay--inhibit-bidi", redisplay__inhibit_bidi, | ||
| 31770 | doc: /* Non-nil means it is not safe to attempt bidi reordering for display. */); | ||
| 31771 | /* Initialize to t, since we need to disable reordering until | ||
| 31772 | loadup.el successfully loads charprop.el. */ | ||
| 31773 | redisplay__inhibit_bidi = true; | ||
| 31763 | } | 31774 | } |
| 31764 | 31775 | ||
| 31765 | 31776 | ||
diff --git a/src/xfns.c b/src/xfns.c index 74c559a5a0b..f7779e52590 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -273,7 +273,7 @@ x_real_pos_and_offsets (struct frame *f, | |||
| 273 | XFree (tmp_children); | 273 | XFree (tmp_children); |
| 274 | #endif | 274 | #endif |
| 275 | 275 | ||
| 276 | if (wm_window == rootw || had_errors) | 276 | if (had_errors || wm_window == rootw) |
| 277 | break; | 277 | break; |
| 278 | 278 | ||
| 279 | win = wm_window; | 279 | win = wm_window; |