Subject: Re: [sup-talk] [PATCH] moved deriving the cmd for bouncing to Account and fixed a bug in it

From: Rich Lane <[email-masked]>
Date: Wed, 11 Nov 2009 23:30:56 -0500

Excerpts from Tero Tilus's message of Sat Oct 10 03:21:33 -0400 2009:
> The default sendmail command used for bouncing mail was derived from
> Account#sendmail in ThreadViewMode#bounce.  Moved it to
> Account#bounce_sendmail.  Part of work towards more DRY mail bouncing
> within mark-as-spam hook. The code also had a bug, "$1" (instead of $1
> or "#{$1}").  Fixed it.
> 
> Signed-off-by: Tero Tilus <[email-masked]>
> ---
>  lib/sup/account.rb                |   11 +++++++++++
>  lib/sup/modes/thread-view-mode.rb |    7 +------
>  2 files changed, 12 insertions(+), 6 deletions(-)

Looks good to me. Pushed to branch fix-bounce-cmd in my repo* and merged
to master.

* git://github.com/rlane/sup
_______________________________________________
sup-talk mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-talk

---

From: Tero Tilus <[email-masked]>
Date: Sat, 10 Oct 2009 10:21:33 +0300

diff --git a/lib/sup/account.rb b/lib/sup/account.rb
index eed2794..bf8a8a0 100644
--- a/lib/sup/account.rb
+++ b/lib/sup/account.rb
@@ -10,6 +10,17 @@ class Account < Person
     @sendmail = h[:sendmail]
     @signature = h[:signature]
   end
+
+  # Default sendmail command for bouncing mail,
+  # deduced from #sendmail
+  def bounce_sendmail
+    sendmail.sub(/\s(\-(ti|it|t))\b/) do |match|
+      case $1
+      when '-t' then ''
+      else ' -i'
+      end
+    end
+  end
 end
 
 class AccountManager
diff --git a/lib/sup/modes/thread-view-mode.rb b/lib/sup/modes/thread-view-mode.rb
index 81197c2..e7f4a4f 100644
--- a/lib/sup/modes/thread-view-mode.rb
+++ b/lib/sup/modes/thread-view-mode.rb
@@ -202,12 +202,7 @@ EOS
     m = @message_lines[curpos] or return
     to = BufferManager.ask_for_contacts(:people, "Bounce To: ") or return
 
-    defcmd = AccountManager.default_account.sendmail.sub(/\s(\-(ti|it|t))\b/) do |match|
-      case "$1"
-        when '-t' then ''
-        else ' -i'
-      end
-    end
+    defcmd = AccountManager.default_account.bounce_sendmail
 
     cmd = case (hookcmd = HookManager.run "bounce-command", :from => m.from, :to => to)
           when nil, /^$/ then defcmd
-- 
1.5.6.5

-- 
Tero Tilus ## 050 3635 235 ## http://tero.tilus.net/
_______________________________________________
sup-talk mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-talk