Hiroya Murata
lapis****@pop06*****
2002年 10月 2日 (水) 20:34:11 JST
In the message <20021****@pine*****> on Wed, 02 Oct 2002 19:12:21 +0900, wrote: 土> でもって,この2つは同一人物だからと,手作業で Foo さんのレコードの net 土> エントリに foo @ bar を追加して,「foo @ bar」レコードを削除します. ここで, LSDB のバッファで s(lsdb-mode-save), l(lsdb-mode-load) の 順で操作して lsdb-address-cache をリビルドすれば, マージ後のレコー ドが表示されませんか? 土> その後で,もう一度 土> From: foo @ bar 土> というメールを見ると,foo @ bar という名前のレコードが復活してしまうので 土> す. 順に lsdb-address-cache を見てみると, 1. 最初 {foo @ foo => Foo} 2. From: foo @ bar を表示 {foo @ foo => Foo, foo @ bar => foo @ bar} 3. Foo に foo @ bar を追加 {foo @ foo => Foo, foo @ bar => Foo} 4. foo @ bar を削除 {foo @ foo => Foo} と, なっていて foo @ bar から Foo へのマッピングが削除されているの が原因じゃないでしょうか? patch でなくて済みませんが, こんな感じじゃないかと. (defun lsdb-delete-address-cache (record) (let ((net (cdr (assq 'net record)))) (while net (when (string= (car record) (lsdb-gethash (car net) lsdb-address-cache)) (lsdb-remhash (car net) lsdb-address-cache)) (setq net (cdr net))))) ;; テストはしてません. -- Hiroya Murata (村田 浩也) mailto:lapis****@pop06***** PGP fingerprint: 53B6 1B4A 8193 A2D4 1526 BC9E 9AEF 2F6D 249D 5F17