Re: [PATCH] Change attachment stamping to use stat st_mtime by default.

Oswald Buddenhagen via Mutt-dev <[email protected]>
Newsgroups gmane.mail.mutt.devel
Message-ID <[email protected]>
On Thu, Aug 20, 2026 at 10:54:23AM +0800, Kevin J. McCarthy wrote:
>Recent Linux kernels have an issue where time() has a lower
>granularity than the stat st_mtime of a file.
>
the granularity is one second. st_mtime is a subset of st_mtim which has 
a higher granularity, but that's been the case for decades, at least on 
fs that actually support it.

>This can result in
>time() being earlier than the mtime of a file just modified.
>
it can't, as long as only the full seconds are compared.

> void mutt_stamp_attachment(BODY *a)
> {
>-  a->stamp = time(NULL);
>+  struct stat sb;
>+
>+  if (a->filename && stat(a->filename, &sb) == 0)
>+    a->stamp = sb.st_mtime;

this addition is a rather substantial change of behavior (at least at 
the level of this function). i'd expect the commit message to elaborate 
on that.

>+  else
>+    a->stamp = time(NULL) + 1;
> }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.