From: wmorgan Date: Wed, 17 Jan 2007 23:09:18 +0000 (+0000) Subject: bugfixes X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=ef794ee73d876accb418ce21dfdc97249c36164a;p=sup bugfixes git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@259 5c8cc53c-5e98-4d25-b20a-d8db53a31250 --- diff --git a/lib/sup/draft.rb b/lib/sup/draft.rb index 2bed8fa..a6920fd 100644 --- a/lib/sup/draft.rb +++ b/lib/sup/draft.rb @@ -19,11 +19,15 @@ class DraftManager fn = @source.fn_for_offset offset File.open(fn, "w") { |f| yield f } - @source.each do |offset, labels| - m = Message.new :source => @source, :source_info => offset, :labels => labels + my_message = nil + @source.each do |thisoffset, theselabels| + m = Message.new :source => @source, :source_info => thisoffset, :labels => theselabels Index.add_message m UpdateManager.relay :add, m + my_message = m if thisoffset == offset end + + my_message end def discard mid @@ -51,7 +55,13 @@ class DraftLoader < Source def uri; DraftManager.source_name; end def each - Dir.entries(@dir).select { |x| x =~ /^\d+$/ }.sort_by { |x| x.to_i }.each { |id| yield [id, [:draft]] } + ids = Dir.entries(@dir).select { |x| x =~ /^\d+$/ }.map { |x| x.to_i }.sort + ids.each do |id| + if id > cur_offset + self.cur_offset = id + yield [id, [:draft]] + end + end end def gen_offset diff --git a/lib/sup/modes/contact-list-mode.rb b/lib/sup/modes/contact-list-mode.rb index dc22207..5dcf5e2 100644 --- a/lib/sup/modes/contact-list-mode.rb +++ b/lib/sup/modes/contact-list-mode.rb @@ -127,7 +127,7 @@ protected def regen_text @awidth, @nwidth = 0, 0 @contacts.each do |p| - aalias = ContactManager.alias_for_person(p) + aalias = ContactManager.alias_for(p) @awidth = aalias.length if aalias && aalias.length > @awidth @nwidth = p.name.length if p.name && p.name.length > @nwidth end