Don't unmemoize a folder when URL-EXISTS? signals an error; it might
authorChris Hanson <org/chris-hanson/cph>
Mon, 7 May 2001 18:02:52 +0000 (18:02 +0000)
committerChris Hanson <org/chris-hanson/cph>
Mon, 7 May 2001 18:02:52 +0000 (18:02 +0000)
be a transitory error.

It's not obvious to me that we need to unmemoize here.  Maybe we
should just delete the call to URL-EXISTS? altogether.

v7/src/imail/imail-core.scm

index fdf3a379bff3a3aca28247ff72aa4436c605289b..958daa4e51514c868b9cb013592a71cdb45f5496 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: imail-core.scm,v 1.118 2001/03/19 19:29:48 cph Exp $
+;;; $Id: imail-core.scm,v 1.119 2001/05/07 18:02:52 cph Exp $
 ;;;
 ;;; Copyright (c) 1999-2001 Massachusetts Institute of Technology
 ;;;
   (let ((folder (hash-table/get memoized-folders url #f)))
     (and folder
         (let ((folder (weak-car folder)))
-          (if (and folder (url-exists? url))
+          ;; Delete memoization _only_ if URL-EXISTS? unambiguously
+          ;; states non-existence.  An error is often transitory.
+          (if (and folder (ignore-errors (lambda () (url-exists? url))))
               folder
               (begin
                 (unmemoize-folder url)