[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: cache
From: TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp> さん曰く
Subject: [emacs-w3m:06356] cache (was: pukiwiki on Emacs-w3m)
Message-ID: <871xpx2uaq.fsf@pine.kuee.kyoto-u.ac.jp>
Date: Sun, 18 Jan 2004 23:41:33 +0900
> RFC2616 で規定されている cache validation をきちんと実装するのが筋だと
> は思います.ただ,それには暇が足りないので,とりあえず当面の処置として,
> 天海さんのパッチを改変して適用しました.
これなんですが、ぼくの場合は弊害の方が大きいので、問答無用で
cache するオプションを増設して良いですか?とりあえず、パッチを文
末につけます。
また、
> >pukiwiki 編集は, [編集] ボタンをおすと編集画面を GET してきて, フォー
> >ムを編集して, [更新] ボタンで POST します. 同じページを再び編集して,
> >[更新] すると, pukiwiki に「更新の衝突」が発生したと怒られます.
これが体験出来て、sandbox がついている Wiki ページをご存じでした
ら教えてください。問答無用で cache しても post するときになんと
かならないかなぁと思っています。
--
白井秀行 (mailto:shirai@meadowy.org)
Index: w3m.el
===================================================================
RCS file: /storage/cvsroot/emacs-w3m/w3m.el,v
retrieving revision 1.988
diff -u -u -r1.988 w3m.el
--- w3m.el 27 Jan 2004 23:43:33 -0000 1.988
+++ w3m.el 29 Jan 2004 03:33:45 -0000
@@ -684,6 +684,11 @@
:group 'w3m
:type '(integer :size 0))
+(defcustom w3m-follow-cache-control-header t
+ "*Follow the headers of chache control like 'Pragma:' and 'Cache-control:'"
+ :group 'w3m
+ :type 'boolean)
+
(defcustom w3m-keep-cache-size 300
"*Maximum number of pages to be cached in emacs-w3m."
:group 'w3m
@@ -4046,12 +4051,13 @@
(let ((header (buffer-substring (point-min) (point))))
(when w3m-use-cookies
(w3m-cookie-set url (point-min) (point)))
- (unless (prog1 (save-excursion
- (or (re-search-backward
- "^Pragma:[ \t]+no-cache\n" nil t)
- (re-search-backward
- "^Cache-control:[ \t]+\\(no-cache\\|max-age=0\\)\n"
- nil t)))
+ (unless (prog1 (and w3m-follow-cache-control-header
+ (save-excursion
+ (or (re-search-backward
+ "^Pragma:[ \t]+no-cache\n" nil t)
+ (re-search-backward
+ "^Cache-control:[ \t]+\\(no-cache\\|max-age=0\\)\n"
+ nil t))))
(delete-region (point-min) (point)))
(w3m-cache-header url header)
(w3m-cache-contents url (current-buffer)))