]> git.cworth.org Git - sup/commitdiff
i guess range doesn't have a #size method
authorwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Tue, 15 May 2007 17:26:43 +0000 (17:26 +0000)
committerwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Tue, 15 May 2007 17:26:43 +0000 (17:26 +0000)
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@400 5c8cc53c-5e98-4d25-b20a-d8db53a31250

lib/sup/imap.rb
lib/sup/util.rb

index e9b83ef849521731a75db9d68a6e41576d9e8ace..b789d8b50512605cb50d572ff89f588439330564 100644 (file)
@@ -120,7 +120,7 @@ class IMAP < Source
     values = safely { @imap.fetch range, ['RFC822.SIZE', 'INTERNALDATE'] }
     relevant_values = values.find_all { |v| range.include? v.seqno }
 
-    if relevant_values.size < values.size
+    if relevant_values.size != values.size
       Redwood::log "You IMAP server is buggy: it returned #{values.size} headers for a request for #{range.size}. What are you using, Binc?"
     end
 
index 3afb2db18e5a025a5e6d64006898b7c9cd01add1..6db56a3e1023ac98f19b1086faa57c7b3fc3d771 100644 (file)
@@ -1,3 +1,10 @@
+class Range
+  ## only valid for integer ranges (unless I guess it's exclusive)
+  def size 
+    last - first + (exclude_end? ? 0 : 1)
+  end
+end
+
 class Module
   def bool_reader *args
     args.each { |sym| class_eval %{ def #{sym}?; @#{sym}; end } }