<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,7 +2,7 @@ module IgnoreNil
   def ignore_nil(&amp;block)
     begin
       yield
-    rescue NoMethodError =&gt; e
+    rescue NoMethodError, RuntimeError =&gt; e
       if (e.message =~ /You have a nil object when you didn't expect it/) ||
           (e.message =~ /undefined method `.*?' for nil:NilClass/) || (e.message =~ /^Called id for nil/)
         return nil</diff>
      <filename>lib/ignore_nil.rb</filename>
    </modified>
    <modified>
      <diff>@@ -23,4 +23,11 @@ class IgnoreNilTest &lt; Test::Unit::TestCase
     }
   end
   
+  def test_from_inside_map
+    assert_nil ignore_nil { [1,2,3,nil].map{|i| i * 3 } }
+  end
+
+  def test_whiny_nil
+    assert_nil ignore_nil { raise RuntimeError.new(&quot;Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id&quot;) }
+  end
 end
\ No newline at end of file</diff>
      <filename>test/ignore_nil_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>2c73a4e5503773f3122417e7ef8a213eb83467b4</id>
    </parent>
  </parents>
  <author>
    <name>Steven Soroka</name>
    <email>ssoroka78@gmail.com</email>
  </author>
  <url>http://github.com/ssoroka/ignore_nil/commit/d8f73517caed3d8e781467f8e7660ada9cb6c57e</url>
  <id>d8f73517caed3d8e781467f8e7660ada9cb6c57e</id>
  <committed-date>2008-12-11T09:17:01-08:00</committed-date>
  <authored-date>2008-12-11T09:17:01-08:00</authored-date>
  <message>added support for nil.id raising RuntimeError with whinynil</message>
  <tree>de11a6e2eef9ec68929874ba82f6942a6e9fc275</tree>
  <committer>
    <name>Steven Soroka</name>
    <email>ssoroka78@gmail.com</email>
  </committer>
</commit>
