commit 210b30dd62b033262ac01888947619e73e578d54
parent 5c4d06d5d0c7f7448fe5abf55b5b7082eecc26d2
Author: wmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Date: Tue, 15 May 2007 17:26:43 +0000
i guess range doesn't have a #size method
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@400 5c8cc53c-5e98-4d25-b20a-d8db53a31250
Diffstat:
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/lib/sup/imap.rb b/lib/sup/imap.rb
@@ -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
diff --git a/lib/sup/util.rb b/lib/sup/util.rb
@@ -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 } }