[mew-dist 21423] Re: mew-local-folder-size

Shun-ichi GOTO gotoh at example.com
2002年 8月 14日 (水) 15:04:23 JST


>>>>> at Wed, 14 Aug 2002 14:10:58 +0900 (JST)
>>>>> kazu == Kazu Yamamoto (山本和彦) <kazu at example.com> said,
kazu> From: Shun-ichi GOTO <gotoh at example.com>
kazu> Subject: [mew-dist 21418] Re: mew-local-folder-size

> ## こういうのってファイルシステム依存だと思うぞ。

kazu> Windows には、ディレクトリのサイズもないのですか。^^;

余談ですが、最初にUNIXに触れた頃は、そもそもディレクトリのサイズって考え
方自体、違和感を感じましたけどね。

あと、FreeBSD 3.5 と BSD/OS 4.0.1 で試してみましたが、ディレクトリの 
size は確かに変化はしますが、単にファイルを削除していっても変化はしませ
ん。変化するのは新たにfileを作った時のようです。


> あと、mew-local-retrieve<f> をちらっと見た限り、
> シンボリックリンクの場合の考慮を忘れてるように思うので、
> file-truename を使った方が良いかな、と。

kazu> よくわからないですが、

kazu> Q1) どこにシンボリックリングが使われているときの話ですか?

## 真面目にcode をおったわけではないのでハズしてる可能性大ですが。

例えば +folder を扱う時、 mew-expand-folder<f> で 
/home/gotoh/Mail/folder になって、そのディレクトリが 
/home/gotoh/share/folder にsymbolic link されているような場合、
/home/gotoh/share/folder に対して mew-file-get-size<f> してもsymbolic
link の情報しか得られないのでは? ということ。


kazu> Q2) 具体的には、コードのどこを直せと言っていますか?

Index: mew-local.el
===================================================================
RCS file: /cvsmew/mew/mew-local.el,v
retrieving revision 1.33
diff -u -r1.33 mew-local.el
--- mew-local.el	2002/08/14 02:57:28	1.33
+++ mew-local.el	2002/08/14 05:37:37
@@ -289,7 +289,7 @@
 	((string-match "^last:\\([0-9]+\\)$" range)
 	 (setq rttl (string-to-int (match-string 1 range))))
 	((and mew-local-folder-size
-	      (>= (mew-file-get-size dir) mew-local-folder-size))
+	      (>= (mew-file-get-size (file-truename dir)) mew-local-folder-size))
 	 (setq rttl nil))
 	((string= range mew-range-all)
 	 (let* ((msgs (directory-files dir nil "^[0-9]+$" 'no-sort))

## 検証はぜんぜんしてませんが。。。

--- Regards,
 Shun-ichi Goto  <gotoh at example.com>
   R&D Group, TAIYO Corp., Tokyo, JAPAN



Mew-dist メーリングリストの案内