[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 5b65c2ad752 1/2: Properly record mtime after insert-file-contents
From: |
Po Lu |
Subject: |
master 5b65c2ad752 1/2: Properly record mtime after insert-file-contents on Android |
Date: |
Fri, 16 Feb 2024 21:36:02 -0500 (EST) |
branch: master
commit 5b65c2ad7526ec081ac37d32c87e9b58e787d66a
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Properly record mtime after insert-file-contents on Android
* src/fileio.c (write_region): Do not verify file identity after
retreiving file status for the second time if st_ino is 0.
---
src/fileio.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/fileio.c b/src/fileio.c
index a92da93ae48..483498fd879 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -5628,7 +5628,15 @@ write_region (Lisp_Object start, Lisp_Object end,
Lisp_Object filename,
changed to a call to `stat'. */
if (emacs_fstatat (AT_FDCWD, fn, &st1, 0) == 0
- && st.st_dev == st1.st_dev && st.st_ino == st1.st_ino)
+ && st.st_dev == st1.st_dev
+ && (st.st_ino == st1.st_ino
+#if defined HAVE_ANDROID && !defined ANDROID_STUBIFY
+ /* `st1.st_ino' == 0 indicates that the inode number
+ cannot be extracted from this document file, despite
+ `st' potentially being backed by a real file. */
+ || st1.st_ino == 0
+#endif /* defined HAVE_ANDROID && !defined ANDROID_STUBIFY */
+ ))
{
/* Use the heuristic if it appears to be valid. With neither
O_EXCL nor O_TRUNC, if Emacs happened to write nothing to the