diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/alloc.c | 4 | ||||
| -rw-r--r-- | src/lisp.h | 10 | ||||
| -rw-r--r-- | src/xdisp.c | 2 | ||||
| -rw-r--r-- | src/xfns.c | 8 |
4 files changed, 16 insertions, 8 deletions
diff --git a/src/alloc.c b/src/alloc.c index f2b80fac882..d6ba4d97905 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -4952,12 +4952,10 @@ typedef union | |||
| 4952 | #ifdef HAVE___BUILTIN_UNWIND_INIT | 4952 | #ifdef HAVE___BUILTIN_UNWIND_INIT |
| 4953 | # define SET_STACK_TOP_ADDRESS(p) \ | 4953 | # define SET_STACK_TOP_ADDRESS(p) \ |
| 4954 | stacktop_sentry sentry; \ | 4954 | stacktop_sentry sentry; \ |
| 4955 | __builtin_unwind_init (); \ | ||
| 4956 | *(p) = NEAR_STACK_TOP (&sentry) | 4955 | *(p) = NEAR_STACK_TOP (&sentry) |
| 4957 | #else | 4956 | #else |
| 4958 | # define SET_STACK_TOP_ADDRESS(p) \ | 4957 | # define SET_STACK_TOP_ADDRESS(p) \ |
| 4959 | stacktop_sentry sentry; \ | 4958 | stacktop_sentry sentry; \ |
| 4960 | __builtin_unwind_init (); \ | ||
| 4961 | test_setjmp (); \ | 4959 | test_setjmp (); \ |
| 4962 | sys_setjmp (sentry.j); \ | 4960 | sys_setjmp (sentry.j); \ |
| 4963 | *(p) = NEAR_STACK_TOP (&sentry + (stack_bottom < &sentry.c)) | 4961 | *(p) = NEAR_STACK_TOP (&sentry + (stack_bottom < &sentry.c)) |
| @@ -5033,7 +5031,7 @@ mark_stack (char const *bottom, char const *end) | |||
| 5033 | from FUNC. */ | 5031 | from FUNC. */ |
| 5034 | 5032 | ||
| 5035 | NO_INLINE void | 5033 | NO_INLINE void |
| 5036 | flush_stack_call_func (void (*func) (void *arg), void *arg) | 5034 | flush_stack_call_func1 (void (*func) (void *arg), void *arg) |
| 5037 | { | 5035 | { |
| 5038 | void *end; | 5036 | void *end; |
| 5039 | struct thread_state *self = current_thread; | 5037 | struct thread_state *self = current_thread; |
diff --git a/src/lisp.h b/src/lisp.h index 66a86ddadfa..893e278afe0 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -3819,7 +3819,15 @@ extern void alloc_unexec_pre (void); | |||
| 3819 | extern void alloc_unexec_post (void); | 3819 | extern void alloc_unexec_post (void); |
| 3820 | extern void mark_maybe_objects (Lisp_Object const *, ptrdiff_t); | 3820 | extern void mark_maybe_objects (Lisp_Object const *, ptrdiff_t); |
| 3821 | extern void mark_stack (char const *, char const *); | 3821 | extern void mark_stack (char const *, char const *); |
| 3822 | extern void flush_stack_call_func (void (*func) (void *arg), void *arg); | 3822 | extern void flush_stack_call_func1 (void (*func) (void *arg), void *arg); |
| 3823 | |||
| 3824 | INLINE void | ||
| 3825 | flush_stack_call_func (void (*func) (void *arg), void *arg) | ||
| 3826 | { | ||
| 3827 | __builtin_unwind_init (); | ||
| 3828 | flush_stack_call_func1 (func, arg); | ||
| 3829 | } | ||
| 3830 | |||
| 3823 | extern void garbage_collect (void); | 3831 | extern void garbage_collect (void); |
| 3824 | extern void maybe_garbage_collect (void); | 3832 | extern void maybe_garbage_collect (void); |
| 3825 | extern const char *pending_malloc_warning; | 3833 | extern const char *pending_malloc_warning; |
diff --git a/src/xdisp.c b/src/xdisp.c index d65bb388699..cf15f579b58 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -5120,7 +5120,7 @@ handle_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object, | |||
| 5120 | if (CONSP (spec) && EQ (XCAR (spec), Qdisable_eval)) | 5120 | if (CONSP (spec) && EQ (XCAR (spec), Qdisable_eval)) |
| 5121 | { | 5121 | { |
| 5122 | enable_eval = false; | 5122 | enable_eval = false; |
| 5123 | spec = XCAR (XCDR (spec)); | 5123 | spec = CONSP (XCDR (spec)) ? XCAR (XCDR (spec)) : Qnil; |
| 5124 | } | 5124 | } |
| 5125 | 5125 | ||
| 5126 | if (CONSP (spec) | 5126 | if (CONSP (spec) |
diff --git a/src/xfns.c b/src/xfns.c index 1f381e2a8b0..2ab5080d977 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -6738,9 +6738,11 @@ x_hide_tip (bool delete) | |||
| 6738 | } | 6738 | } |
| 6739 | } | 6739 | } |
| 6740 | 6740 | ||
| 6741 | /* Reset tip_last_frame, it will be reassigned when showing the | 6741 | /* When using GTK+ system tooltips (compare Bug#41200) reset |
| 6742 | next GTK+ system tooltip. */ | 6742 | tip_last_frame. It will be reassigned when showing the next |
| 6743 | tip_last_frame = Qnil; | 6743 | GTK+ system tooltip. */ |
| 6744 | if (x_gtk_use_system_tooltips) | ||
| 6745 | tip_last_frame = Qnil; | ||
| 6744 | 6746 | ||
| 6745 | /* Now look whether there's an Emacs tip around. */ | 6747 | /* Now look whether there's an Emacs tip around. */ |
| 6746 | if (FRAMEP (tip_frame)) | 6748 | if (FRAMEP (tip_frame)) |