diff options
| author | Po Lu | 2023-03-02 20:00:06 +0800 |
|---|---|---|
| committer | Po Lu | 2023-03-02 20:00:06 +0800 |
| commit | a6a586ffc1bd302e30d80cb88b06e1e7e1573f63 (patch) | |
| tree | 33877aa5d5c405e3943c075acdef9bd94d8d9faf /src | |
| parent | 42674a71446e2ce1ba1f3226c978c7546334d4ea (diff) | |
| parent | 8d5d7509b0a2c248084fa349b0b188d4de4af804 (diff) | |
| download | emacs-a6a586ffc1bd302e30d80cb88b06e1e7e1573f63.tar.gz emacs-a6a586ffc1bd302e30d80cb88b06e1e7e1573f63.zip | |
Merge remote-tracking branch 'origin/master' into feature/android
Diffstat (limited to 'src')
| -rw-r--r-- | src/alloc.c | 5 | ||||
| -rw-r--r-- | src/bytecode.c | 4 | ||||
| -rw-r--r-- | src/haikufont.c | 2 | ||||
| -rw-r--r-- | src/profiler.c | 3 | ||||
| -rw-r--r-- | src/xdisp.c | 2 |
5 files changed, 10 insertions, 6 deletions
diff --git a/src/alloc.c b/src/alloc.c index 6d8658e7bb0..3e7d5c2d15f 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -3742,7 +3742,8 @@ usage: (make-byte-code ARGLIST BYTE-CODE CONSTANTS DEPTH &optional DOCSTRING INT | |||
| 3742 | && FIXNATP (args[COMPILED_STACK_DEPTH]))) | 3742 | && FIXNATP (args[COMPILED_STACK_DEPTH]))) |
| 3743 | error ("Invalid byte-code object"); | 3743 | error ("Invalid byte-code object"); |
| 3744 | 3744 | ||
| 3745 | pin_string (args[COMPILED_BYTECODE]); // Bytecode must be immovable. | 3745 | /* Bytecode must be immovable. */ |
| 3746 | pin_string (args[COMPILED_BYTECODE]); | ||
| 3746 | 3747 | ||
| 3747 | /* We used to purecopy everything here, if purify-flag was set. This worked | 3748 | /* We used to purecopy everything here, if purify-flag was set. This worked |
| 3748 | OK for Emacs-23, but with Emacs-24's lexical binding code, it can be | 3749 | OK for Emacs-23, but with Emacs-24's lexical binding code, it can be |
| @@ -5959,7 +5960,7 @@ purecopy (Lisp_Object obj) | |||
| 5959 | memcpy (vec, objp, nbytes); | 5960 | memcpy (vec, objp, nbytes); |
| 5960 | for (i = 0; i < size; i++) | 5961 | for (i = 0; i < size; i++) |
| 5961 | vec->contents[i] = purecopy (vec->contents[i]); | 5962 | vec->contents[i] = purecopy (vec->contents[i]); |
| 5962 | // Byte code strings must be pinned. | 5963 | /* Byte code strings must be pinned. */ |
| 5963 | if (COMPILEDP (obj) && size >= 2 && STRINGP (vec->contents[1]) | 5964 | if (COMPILEDP (obj) && size >= 2 && STRINGP (vec->contents[1]) |
| 5964 | && !STRING_MULTIBYTE (vec->contents[1])) | 5965 | && !STRING_MULTIBYTE (vec->contents[1])) |
| 5965 | pin_string (vec->contents[1]); | 5966 | pin_string (vec->contents[1]); |
diff --git a/src/bytecode.c b/src/bytecode.c index 124348e5b35..74a94859aba 100644 --- a/src/bytecode.c +++ b/src/bytecode.c | |||
| @@ -789,10 +789,10 @@ exec_byte_code (Lisp_Object fun, ptrdiff_t args_template, | |||
| 789 | Lisp_Object template; | 789 | Lisp_Object template; |
| 790 | Lisp_Object bytecode; | 790 | Lisp_Object bytecode; |
| 791 | if (COMPILEDP (call_fun) | 791 | if (COMPILEDP (call_fun) |
| 792 | // Lexical binding only. | 792 | /* Lexical binding only. */ |
| 793 | && (template = AREF (call_fun, COMPILED_ARGLIST), | 793 | && (template = AREF (call_fun, COMPILED_ARGLIST), |
| 794 | FIXNUMP (template)) | 794 | FIXNUMP (template)) |
| 795 | // No autoloads. | 795 | /* No autoloads. */ |
| 796 | && (bytecode = AREF (call_fun, COMPILED_BYTECODE), | 796 | && (bytecode = AREF (call_fun, COMPILED_BYTECODE), |
| 797 | !CONSP (bytecode))) | 797 | !CONSP (bytecode))) |
| 798 | { | 798 | { |
diff --git a/src/haikufont.c b/src/haikufont.c index a025dec58bb..b4c2e547247 100644 --- a/src/haikufont.c +++ b/src/haikufont.c | |||
| @@ -760,7 +760,7 @@ haikufont_open (struct frame *f, Lisp_Object font_entity, int pixel_size) | |||
| 760 | struct haiku_font_pattern ptn; | 760 | struct haiku_font_pattern ptn; |
| 761 | struct font *font; | 761 | struct font *font; |
| 762 | void *be_font; | 762 | void *be_font; |
| 763 | Lisp_Object font_object, tem, extra, indices, antialias; | 763 | Lisp_Object font_object, extra, indices, antialias; |
| 764 | int px_size, min_width, max_width; | 764 | int px_size, min_width, max_width; |
| 765 | int avg_width, height, space_width, ascent; | 765 | int avg_width, height, space_width, ascent; |
| 766 | int descent, underline_pos, underline_thickness; | 766 | int descent, underline_pos, underline_thickness; |
diff --git a/src/profiler.c b/src/profiler.c index 81b5e7b0cf0..8247b2e90c6 100644 --- a/src/profiler.c +++ b/src/profiler.c | |||
| @@ -505,6 +505,9 @@ Before returning, a new log is allocated for future samples. */) | |||
| 505 | void | 505 | void |
| 506 | malloc_probe (size_t size) | 506 | malloc_probe (size_t size) |
| 507 | { | 507 | { |
| 508 | if (EQ (backtrace_top_function (), QAutomatic_GC)) /* bug#60237 */ | ||
| 509 | /* FIXME: We should do something like what we did with `cpu_gc_count`. */ | ||
| 510 | return; | ||
| 508 | eassert (HASH_TABLE_P (memory_log)); | 511 | eassert (HASH_TABLE_P (memory_log)); |
| 509 | record_backtrace (XHASH_TABLE (memory_log), min (size, MOST_POSITIVE_FIXNUM)); | 512 | record_backtrace (XHASH_TABLE (memory_log), min (size, MOST_POSITIVE_FIXNUM)); |
| 510 | } | 513 | } |
diff --git a/src/xdisp.c b/src/xdisp.c index e32b0dc5166..d3cd897f489 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -4583,7 +4583,7 @@ face_at_pos (const struct it *it, enum lface_attribute_index attr_filter) | |||
| 4583 | &next_stop, | 4583 | &next_stop, |
| 4584 | base_face_id, false, | 4584 | base_face_id, false, |
| 4585 | attr_filter); | 4585 | attr_filter); |
| 4586 | } // !STRINGP (it->string)) | 4586 | } /* !STRINGP (it->string) */ |
| 4587 | } | 4587 | } |
| 4588 | 4588 | ||
| 4589 | 4589 | ||