Subject: Re: [sup-devel] [PATCH] ruby 1.9: expect nil start_offset when an MBox::Loader is first created

From: William Morgan <[email-masked]>
Date: Sun, 03 Jan 2010 07:00:21 -0800

Applied directly to master. Thanks!
-- 
William <[email-masked]>
_______________________________________________
Sup-devel mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-devel

---

From: Rich Lane <[email-masked]>
Date: Fri, 1 Jan 2010 14:14:00 -0800

Various callers (including sup-add) passed a nil start_offset. Through a
convoluted path probably involving the fact that nil.to_i == 0, this did the
right thing on Ruby 1.8. It crashes on 1.9, so change initialize to expect a
nil offset and replace it with 0.
---
 lib/sup/mbox/loader.rb |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/lib/sup/mbox/loader.rb b/lib/sup/mbox/loader.rb
index 520e2ec..54d227d 100644
--- a/lib/sup/mbox/loader.rb
+++ b/lib/sup/mbox/loader.rb
@@ -12,7 +12,7 @@ class Loader < Source
   attr_reader :labels
 
   ## uri_or_fp is horrific. need to refactor.
-  def initialize uri_or_fp, start_offset=0, usual=true, archived=false, id=nil, labels=nil
+  def initialize uri_or_fp, start_offset=nil, usual=true, archived=false, id=nil, labels=nil
     @mutex = Mutex.new
     @labels = Set.new((labels || []) - LabelManager::RESERVED_LABELS)
 
@@ -29,6 +29,7 @@ class Loader < Source
       @path = uri_or_fp.path
     end
 
+    start_offset ||= 0
     super uri_or_fp, start_offset, usual, archived, id
   end
 
-- 
1.6.3.3