<feed xmlns='http://www.w3.org/2005/Atom'>
<title>chemacs.git/exec/trace.c, branch master</title>
<subtitle>emacs
</subtitle>
<id>http://cgit.adnoto.dev/chemacs.git/atom?h=master</id>
<link rel='self' href='http://cgit.adnoto.dev/chemacs.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/'/>
<updated>2026-05-28T03:31:16Z</updated>
<entry>
<title>Fix the Android build again</title>
<updated>2026-05-28T03:31:16Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2026-05-28T03:31:16Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=330b4e2a942a6ff506bab72503f940c9b65d395f'/>
<id>urn:sha1:330b4e2a942a6ff506bab72503f940c9b65d395f</id>
<content type='text'>
* exec/trace.c (ARRAYELTS, establish_seccomp_filter): Restore
ARRAYELTS, since Gnulib is not available in the exec library.
</content>
</entry>
<entry>
<title>ARRAYELTS → countof</title>
<updated>2026-05-27T04:57:20Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2026-05-27T00:51:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=225876e97999664a075eb6f1489b4b4c8e515ded'/>
<id>urn:sha1:225876e97999664a075eb6f1489b4b4c8e515ded</id>
<content type='text'>
C2y will standardize countof as the macro that Emacs uses the name
ARRAYELTS for.  Switch to the standard name, which is supported
by GCC 16+, by Clang 21, and by the Gnulib stdcountof-h module already
in use for compilers that do not support countof.
Also, use countof in a few places where we missed using ARRAYELTS.
* admin/coccinelle/arrayelts.cocci: Suggest countof, not ARRAYELTS.
* admin/merge-gnulib (GNULIB_MODULES): Add stdcountof-h,
as it is now a direct rather than an indirect dependency.
* exec/trace.c, src/lisp.h, src/sfnt.c: Include &lt;stdcountof.h&gt;.
(ARRAYELTS): Remove.  All uses replaced by countof.
* lib-src/ebrowse.c, lib-src/etags.c, lib-src/make-docfile.c:
* lib-src/seccomp-filter.c, lwlib/lwlib-Xaw.c:
Prefer &lt;stdcountof.h&gt; and countof to doing things by hand.
</content>
</entry>
<entry>
<title>Revert "Don’t silently truncate file names in exec.c"</title>
<updated>2026-05-25T03:21:00Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2026-05-25T03:21:00Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=44013f6be751363f7c4c642ebbfd618110db8b75'/>
<id>urn:sha1:44013f6be751363f7c4c642ebbfd618110db8b75</id>
<content type='text'>
This reverts commit 3461b450c5eae3ed53192aa9514e0b1ac1b1c8f2.

Gnulib and intprops.h are not available from within the exec helper.
</content>
</entry>
<entry>
<title>Don’t silently truncate file names in exec.c</title>
<updated>2026-05-24T02:18:53Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2026-05-21T03:52:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=3461b450c5eae3ed53192aa9514e0b1ac1b1c8f2'/>
<id>urn:sha1:3461b450c5eae3ed53192aa9514e0b1ac1b1c8f2</id>
<content type='text'>
* exec/exec.c (format_pid): Simplify.  No need for a local array.
(exec_0): Shrink local buffer.
If names are too long, fail instead of silently truncating them.
Be cautious in case symlink is zero length (shouldn’t be possible
in Android, but it’s easy to be safe).
</content>
</entry>
<entry>
<title>; Add 2026 to copyright years.</title>
<updated>2026-01-01T12:54:34Z</updated>
<author>
<name>Sean Whitton</name>
<email>spwhitton@spwhitton.name</email>
</author>
<published>2026-01-01T12:54:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=c31f6adc31d48076c63ad82b83b2970e1b0d7b9b'/>
<id>urn:sha1:c31f6adc31d48076c63ad82b83b2970e1b0d7b9b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Port recent Android changes to mips64el</title>
<updated>2025-04-15T08:17:14Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-04-15T08:14:14Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=5bf86e2be0693c579a43759fd1da1651344d401e'/>
<id>urn:sha1:5bf86e2be0693c579a43759fd1da1651344d401e</id>
<content type='text'>
* exec/config-mips.m4.in (DADDI2, DADDI3): Disable at-clobbering
by assembler macros expressly.

* exec/loader-mips64el.s: Adapt from loader-mipsel.s.

* exec/configure.ac (exec_cv_as_daddi): Properly escape reg
names.

* exec/exec.c (struct exec_jump_command, exec_0): Don't define
or set `fpu_mode' if __LP64__.

* exec/exec.h (struct exec_tracee): New field `callno'.

* exec/trace.c (process_system_call): Always record the current
system call number in TRACEE lest it should be required once it
has been overwritten upon the syscall's completion.
(seccomp_system_call): Likewise.
(after_fork): Clear `tracee-&gt;callno'.
</content>
</entry>
<entry>
<title>Replace AT_EXECFN in auxiliary vectors of programs executed on Android</title>
<updated>2025-04-13T10:51:49Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-04-13T10:50:59Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=7a01350624e1665e707f98e13d51f53e9f87ce95'/>
<id>urn:sha1:7a01350624e1665e707f98e13d51f53e9f87ce95</id>
<content type='text'>
* exec/exec.c (insert_args, exec_0): On non-MIPS systems, copy
NAME and its length to the loader area.  State that MIPS support
is not yet available (though it will be pending the availability
of a functioning emulator).

* exec/loader-aarch64.s (_start):

* exec/loader-armeabi.s (_start):

* exec/loader-x86.s (_start):

* exec/loader-x86_64.s (_start): Displace auxv, environ, and
argv to create sufficient space for the provided file name, and
copy the file name there.  Replace AT_EXECFN to refer to this
space.
</content>
</entry>
<entry>
<title>Merge from savannah/emacs-30</title>
<updated>2025-02-09T04:08:27Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-02-09T04:08:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=d93342cf322fae0040b268dfaabfbc720ee12d98'/>
<id>urn:sha1:d93342cf322fae0040b268dfaabfbc720ee12d98</id>
<content type='text'>
563efd6838c Fix program execution on Android 15 QPR2 Beta
</content>
</entry>
<entry>
<title>Fix program execution on Android 15 QPR2 Beta</title>
<updated>2025-02-09T04:06:52Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-02-09T04:06:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=563efd6838c1b62c8962385911b5fd5c5637ab96'/>
<id>urn:sha1:563efd6838c1b62c8962385911b5fd5c5637ab96</id>
<content type='text'>
* exec/trace.c (process_vm_readv, process_vm_writev): New
function pointers.  Attempt to load them on recent Android
systems when `exec' was not linked with a sufficiently
up-to-date libc.
(read_memory, user_copy): Always use process_vm_readv and
process_vm_writev if available.
(handle_openat): Write trailing NULL byte of filename to user
buffer.
(exec_init): Attempt to dlsym process_vm_readv and
process_vm_writev.
</content>
</entry>
<entry>
<title>Update copyright year to 2025</title>
<updated>2025-01-02T17:39:42Z</updated>
<author>
<name>Stefan Kangas</name>
<email>stefankangas@gmail.com</email>
</author>
<published>2025-01-02T17:32:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=7fa975adbce3f2ce4ba40ea52110b992a52262b6'/>
<id>urn:sha1:7fa975adbce3f2ce4ba40ea52110b992a52262b6</id>
<content type='text'>
Run "TZ=UTC0 admin/update-copyright".
</content>
</entry>
</feed>
