--- toast	2004/03/31 00:40:43	1.314
+++ toast	2004/04/02 22:10:13	1.315
@@ -857,7 +857,8 @@
   return openhttpurl(*HANDLE, $url, ftpproxy) if ftpproxy;
 
   explain("fetching $url");
-  $url =~ m!^(\w+)://([\w\.]+)(:(\d+))?(/[\!-\~]*)?$! || error("bad url: $url");
+  $url =~ m!^(\w+)://([-\w\.]+)(:(\d+))?(/[\!-\~]*)?$!
+      || error("bad url: $url");
   my($proto, $host, $port, $path) = ($1, $2, $4 || 21, $5 || '/');
   error("don't know how to fetch FTP directory listings") if $path =~ m!/$!;
 
@@ -2078,6 +2079,8 @@
   defined($version) || error;
 
   @urls = pkgurls($name, $version) unless @urls;
+
+  return ($name, $version, @urls) if isstored($name, $version);
 
   my($verdir) = pkgpath($name, $version);
   my($realdir) = path($verdir, archivedir);