[Mew-dist 12720] Re: タイムスタンプを使うimmknmz
Hideyuki SHIRAI ( 白井秀行 )
shirai at example.com
2000年 3月 24日 (金) 19:33:21 JST
From: KOIE Hidetaka (鯉江英隆) <hide at example.com> さん曰く
Subject: [Mew-dist 12719] RE: タイムスタンプを使うimmknmz
Message-ID: <00Mar24.191750jst.29569 at example.com>
Date: Fri, 24 Mar 2000 19:05:22 +0900
鯉江> | 鯉江> これはwrite-regionは書き込み量がzeroの場合には
鯉江> | 鯉江> ファイルを更新ないのが原因のようです。
鯉江> FreeBSD-3.3をつかっています。
鯉江> | という簡単な elisp を動かすと、動かすたびに zzz1 の値が変わって、
鯉江> | Perl の stat() で得る mtime の値も増加しました。
鯉江> こちらの環境では変化がありませんでした。
鯉江> どうやらopen(2)システムコールの違いのようです。
鯉江> FreeBSDではO_TRUNCが付いていても
鯉江> ファイルサイズが最初から0だったらmtimeを変更しません。
鯉江> ファイルの内容が変更されていないわけですから
鯉江> この仕様は理解できます。(POSIXでは特に規定はなさそうです。)
おぉ、了解です。SunOS 5.4 だと
If O_TRUNC is set and the file did previously exist, upon
successful completion open() marks for update the st_ctime
and st_mtime fields of the file.
だから、変わるのですね。紛らわしいけど。
IM/Folder.pm で touch するときは O_TRUNC では無いから mtime が変
わるということですね。
# 道理で乃村さんの mhc でも 'x' を書いていたわけだ。納得。
--
白井秀行 (mailto:shirai at example.com)
Mew-dist メーリングリストの案内