aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPo Lu2023-03-02 20:00:06 +0800
committerPo Lu2023-03-02 20:00:06 +0800
commita6a586ffc1bd302e30d80cb88b06e1e7e1573f63 (patch)
tree33877aa5d5c405e3943c075acdef9bd94d8d9faf /src
parent42674a71446e2ce1ba1f3226c978c7546334d4ea (diff)
parent8d5d7509b0a2c248084fa349b0b188d4de4af804 (diff)
downloademacs-a6a586ffc1bd302e30d80cb88b06e1e7e1573f63.tar.gz
emacs-a6a586ffc1bd302e30d80cb88b06e1e7e1573f63.zip
Merge remote-tracking branch 'origin/master' into feature/android
Diffstat (limited to 'src')
-rw-r--r--src/alloc.c5
-rw-r--r--src/bytecode.c4
-rw-r--r--src/haikufont.c2
-rw-r--r--src/profiler.c3
-rw-r--r--src/xdisp.c2
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. */)
505void 505void
506malloc_probe (size_t size) 506malloc_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