diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/androidvfs.c | 5 | ||||
| -rw-r--r-- | src/eval.c | 22 | ||||
| -rw-r--r-- | src/lread.c | 3 | ||||
| -rw-r--r-- | src/xdisp.c | 12 |
4 files changed, 23 insertions, 19 deletions
diff --git a/src/androidvfs.c b/src/androidvfs.c index bb855099c77..14da8eed37e 100644 --- a/src/androidvfs.c +++ b/src/androidvfs.c | |||
| @@ -2599,9 +2599,10 @@ android_content_name (struct android_vnode *vnode, char *name, | |||
| 2599 | component_end++; | 2599 | component_end++; |
| 2600 | 2600 | ||
| 2601 | /* Now, find out if the first component is a special vnode; if so, | 2601 | /* Now, find out if the first component is a special vnode; if so, |
| 2602 | call its root lookup function with the rest of NAME there. */ | 2602 | call its root lookup function with the rest of NAME there. What is |
| 2603 | more, content files are inaccessible in the absence of a GUI. */ | ||
| 2603 | 2604 | ||
| 2604 | if (api < 19) | 2605 | if (api < 19 || !android_init_gui) |
| 2605 | i = 3; | 2606 | i = 3; |
| 2606 | else if (api < 21) | 2607 | else if (api < 21) |
| 2607 | i = 1; | 2608 | i = 1; |
diff --git a/src/eval.c b/src/eval.c index 2161ab1e1ea..16ece744f42 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -1018,8 +1018,8 @@ usage: (let* VARLIST BODY...) */) | |||
| 1018 | } | 1018 | } |
| 1019 | 1019 | ||
| 1020 | var = maybe_remove_pos_from_symbol (var); | 1020 | var = maybe_remove_pos_from_symbol (var); |
| 1021 | if (!NILP (lexenv) && BARE_SYMBOL_P (var) | 1021 | CHECK_TYPE (BARE_SYMBOL_P (var), Qsymbolp, var); |
| 1022 | && !XBARE_SYMBOL (var)->u.s.declared_special | 1022 | if (!NILP (lexenv) && !XBARE_SYMBOL (var)->u.s.declared_special |
| 1023 | && NILP (Fmemq (var, Vinternal_interpreter_environment))) | 1023 | && NILP (Fmemq (var, Vinternal_interpreter_environment))) |
| 1024 | /* Lexically bind VAR by adding it to the interpreter's binding | 1024 | /* Lexically bind VAR by adding it to the interpreter's binding |
| 1025 | alist. */ | 1025 | alist. */ |
| @@ -1090,10 +1090,10 @@ usage: (let VARLIST BODY...) */) | |||
| 1090 | varlist = XCDR (varlist); | 1090 | varlist = XCDR (varlist); |
| 1091 | Lisp_Object var = maybe_remove_pos_from_symbol (SYMBOLP (elt) ? elt | 1091 | Lisp_Object var = maybe_remove_pos_from_symbol (SYMBOLP (elt) ? elt |
| 1092 | : Fcar (elt)); | 1092 | : Fcar (elt)); |
| 1093 | CHECK_TYPE (BARE_SYMBOL_P (var), Qsymbolp, var); | ||
| 1093 | tem = temps[argnum]; | 1094 | tem = temps[argnum]; |
| 1094 | 1095 | ||
| 1095 | if (!NILP (lexenv) && SYMBOLP (var) | 1096 | if (!NILP (lexenv) && !XBARE_SYMBOL (var)->u.s.declared_special |
| 1096 | && !XSYMBOL (var)->u.s.declared_special | ||
| 1097 | && NILP (Fmemq (var, Vinternal_interpreter_environment))) | 1097 | && NILP (Fmemq (var, Vinternal_interpreter_environment))) |
| 1098 | /* Lexically bind VAR by adding it to the lexenv alist. */ | 1098 | /* Lexically bind VAR by adding it to the lexenv alist. */ |
| 1099 | lexenv = Fcons (Fcons (var, tem), lexenv); | 1099 | lexenv = Fcons (Fcons (var, tem), lexenv); |
| @@ -1492,7 +1492,7 @@ internal_lisp_condition_case (Lisp_Object var, Lisp_Object bodyform, | |||
| 1492 | ptrdiff_t CACHEABLE clausenb = 0; | 1492 | ptrdiff_t CACHEABLE clausenb = 0; |
| 1493 | 1493 | ||
| 1494 | var = maybe_remove_pos_from_symbol (var); | 1494 | var = maybe_remove_pos_from_symbol (var); |
| 1495 | CHECK_SYMBOL (var); | 1495 | CHECK_TYPE (BARE_SYMBOL_P (var), Qsymbolp, var); |
| 1496 | 1496 | ||
| 1497 | Lisp_Object success_handler = Qnil; | 1497 | Lisp_Object success_handler = Qnil; |
| 1498 | 1498 | ||
| @@ -3272,18 +3272,18 @@ funcall_lambda (Lisp_Object fun, ptrdiff_t nargs, Lisp_Object *arg_vector) | |||
| 3272 | { | 3272 | { |
| 3273 | maybe_quit (); | 3273 | maybe_quit (); |
| 3274 | 3274 | ||
| 3275 | Lisp_Object next = XCAR (syms_left); | 3275 | Lisp_Object next = maybe_remove_pos_from_symbol (XCAR (syms_left)); |
| 3276 | if (!SYMBOLP (next)) | 3276 | if (!BARE_SYMBOL_P (next)) |
| 3277 | xsignal1 (Qinvalid_function, fun); | 3277 | xsignal1 (Qinvalid_function, fun); |
| 3278 | 3278 | ||
| 3279 | if (EQ (next, Qand_rest)) | 3279 | if (BASE_EQ (next, Qand_rest)) |
| 3280 | { | 3280 | { |
| 3281 | if (rest || previous_rest) | 3281 | if (rest || previous_rest) |
| 3282 | xsignal1 (Qinvalid_function, fun); | 3282 | xsignal1 (Qinvalid_function, fun); |
| 3283 | rest = 1; | 3283 | rest = 1; |
| 3284 | previous_rest = true; | 3284 | previous_rest = true; |
| 3285 | } | 3285 | } |
| 3286 | else if (EQ (next, Qand_optional)) | 3286 | else if (BASE_EQ (next, Qand_optional)) |
| 3287 | { | 3287 | { |
| 3288 | if (optional || rest || previous_rest) | 3288 | if (optional || rest || previous_rest) |
| 3289 | xsignal1 (Qinvalid_function, fun); | 3289 | xsignal1 (Qinvalid_function, fun); |
| @@ -3305,12 +3305,12 @@ funcall_lambda (Lisp_Object fun, ptrdiff_t nargs, Lisp_Object *arg_vector) | |||
| 3305 | arg = Qnil; | 3305 | arg = Qnil; |
| 3306 | 3306 | ||
| 3307 | /* Bind the argument. */ | 3307 | /* Bind the argument. */ |
| 3308 | if (!NILP (lexenv) && SYMBOLP (next)) | 3308 | if (!NILP (lexenv)) |
| 3309 | /* Lexically bind NEXT by adding it to the lexenv alist. */ | 3309 | /* Lexically bind NEXT by adding it to the lexenv alist. */ |
| 3310 | lexenv = Fcons (Fcons (next, arg), lexenv); | 3310 | lexenv = Fcons (Fcons (next, arg), lexenv); |
| 3311 | else | 3311 | else |
| 3312 | /* Dynamically bind NEXT. */ | 3312 | /* Dynamically bind NEXT. */ |
| 3313 | specbind (maybe_remove_pos_from_symbol (next), arg); | 3313 | specbind (next, arg); |
| 3314 | previous_rest = false; | 3314 | previous_rest = false; |
| 3315 | } | 3315 | } |
| 3316 | } | 3316 | } |
diff --git a/src/lread.c b/src/lread.c index ace7abd80c8..2e8ac37c1ff 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -1748,6 +1748,9 @@ Return t if the file exists and loads successfully. */) | |||
| 1748 | saved_strings[i].size = 0; | 1748 | saved_strings[i].size = 0; |
| 1749 | } | 1749 | } |
| 1750 | 1750 | ||
| 1751 | /* The "...done" messages are shown only in interactive mode, because | ||
| 1752 | the echo-area can display only the last message, and we want to | ||
| 1753 | avoid the impression that the load is still in progress. */ | ||
| 1751 | if (!noninteractive && (NILP (nomessage) || force_load_messages)) | 1754 | if (!noninteractive && (NILP (nomessage) || force_load_messages)) |
| 1752 | { | 1755 | { |
| 1753 | if (is_module) | 1756 | if (is_module) |
diff --git a/src/xdisp.c b/src/xdisp.c index 6f29f159d16..30771a1c83d 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -3647,14 +3647,14 @@ get_narrowed_len (struct window *w) | |||
| 3647 | static ptrdiff_t | 3647 | static ptrdiff_t |
| 3648 | get_medium_narrowing_begv (struct window *w, ptrdiff_t pos) | 3648 | get_medium_narrowing_begv (struct window *w, ptrdiff_t pos) |
| 3649 | { | 3649 | { |
| 3650 | int len = get_narrowed_len (w); | 3650 | ptrdiff_t len = get_narrowed_len (w); |
| 3651 | return max ((pos / len - 1) * len, BEGV); | 3651 | return max ((pos / len - 1) * len, BEGV); |
| 3652 | } | 3652 | } |
| 3653 | 3653 | ||
| 3654 | static ptrdiff_t | 3654 | static ptrdiff_t |
| 3655 | get_medium_narrowing_zv (struct window *w, ptrdiff_t pos) | 3655 | get_medium_narrowing_zv (struct window *w, ptrdiff_t pos) |
| 3656 | { | 3656 | { |
| 3657 | int len = get_narrowed_len (w); | 3657 | ptrdiff_t len = get_narrowed_len (w); |
| 3658 | return min ((pos / len + 1) * len, ZV); | 3658 | return min ((pos / len + 1) * len, ZV); |
| 3659 | } | 3659 | } |
| 3660 | 3660 | ||
| @@ -3704,9 +3704,9 @@ get_large_narrowing_begv (ptrdiff_t pos) | |||
| 3704 | { | 3704 | { |
| 3705 | if (long_line_optimizations_region_size <= 0) | 3705 | if (long_line_optimizations_region_size <= 0) |
| 3706 | return BEGV; | 3706 | return BEGV; |
| 3707 | int len = long_line_optimizations_region_size / 2; | 3707 | ptrdiff_t len = long_line_optimizations_region_size / 2; |
| 3708 | int begv = max (pos - len, BEGV); | 3708 | ptrdiff_t begv = max (pos - len, BEGV); |
| 3709 | int limit = long_line_optimizations_bol_search_limit; | 3709 | ptrdiff_t limit = long_line_optimizations_bol_search_limit; |
| 3710 | while (limit > 0) | 3710 | while (limit > 0) |
| 3711 | { | 3711 | { |
| 3712 | if (begv == BEGV || FETCH_BYTE (CHAR_TO_BYTE (begv) - 1) == '\n') | 3712 | if (begv == BEGV || FETCH_BYTE (CHAR_TO_BYTE (begv) - 1) == '\n') |
| @@ -3722,7 +3722,7 @@ get_large_narrowing_zv (ptrdiff_t pos) | |||
| 3722 | { | 3722 | { |
| 3723 | if (long_line_optimizations_region_size <= 0) | 3723 | if (long_line_optimizations_region_size <= 0) |
| 3724 | return ZV; | 3724 | return ZV; |
| 3725 | int len = long_line_optimizations_region_size / 2; | 3725 | ptrdiff_t len = long_line_optimizations_region_size / 2; |
| 3726 | return min (pos + len, ZV); | 3726 | return min (pos + len, ZV); |
| 3727 | } | 3727 | } |
| 3728 | 3728 | ||