<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,7 +2,7 @@ module Integrity
   class Notifier
     class Base
       def self.notify_of_build(build, config)
-        new(build, config).deliver!
+        Timeout.timeout(8) { new(build, config).deliver! }
       end
 
       def self.to_haml</diff>
      <filename>lib/integrity/notifier/base.rb</filename>
    </modified>
    <modified>
      <diff>@@ -76,7 +76,11 @@ module Integrity
       
       def send_notifications
         notifiers.each do |notifier|
-          notifier.notify_of_build last_build
+          begin
+            notifier.notify_of_build last_build
+          rescue Timeout::Error
+            next
+          end
         end
       end
   end</diff>
      <filename>lib/integrity/project.rb</filename>
    </modified>
    <modified>
      <diff>@@ -271,5 +271,12 @@ describe Integrity::Project do
       @email_notifier.should_receive(:notify_of_build).with(mock_build)
       @project.send(:send_notifications)
     end
+
+    it &quot;should protect itself from eventual timeout error&quot; do
+      @email_notifier.stub!(:notify_of_build).and_raise(Timeout::Error)
+      lambda do
+        @project.send(:send_notifications)
+      end.should_not raise_error
+    end
   end
 end</diff>
      <filename>spec/project_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>f14f9b360d9d68cf987994ed3617fbce25e5cd1d</id>
    </parent>
  </parents>
  <author>
    <name>Simon Rozet</name>
    <email>simon@rozet.name</email>
  </author>
  <url>http://github.com/foca/integrity/commit/26663031d7513ccf10bff921ef377509d713dd85</url>
  <id>26663031d7513ccf10bff921ef377509d713dd85</id>
  <committed-date>2008-11-20T12:07:40-08:00</committed-date>
  <authored-date>2008-11-20T12:02:01-08:00</authored-date>
  <message>protection against timeout of notifiers</message>
  <tree>c08de6bc2dd6f1b3372d293c3f71bcbd806c527b</tree>
  <committer>
    <name>Simon Rozet</name>
    <email>simon@rozet.name</email>
  </committer>
</commit>
