<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -266,10 +266,12 @@ module ActiveRecord
 
         def related_search_options(context, klass, options = {})
           tags_to_find = self.tags_on(context).collect { |t| t.name }
+          
+          exclude_self = &quot;#{klass.table_name}.id != #{self.id} AND&quot; if self.class == klass
 
           { :select     =&gt; &quot;#{klass.table_name}.*, COUNT(#{Tag.table_name}.id) AS count&quot;, 
             :from       =&gt; &quot;#{klass.table_name}, #{Tag.table_name}, #{Tagging.table_name}&quot;,
-            :conditions =&gt; [&quot;#{klass.table_name}.id = #{Tagging.table_name}.taggable_id AND #{Tagging.table_name}.taggable_type = '#{klass.to_s}' AND #{Tagging.table_name}.tag_id = #{Tag.table_name}.id AND #{Tag.table_name}.name IN (?)&quot;, tags_to_find],
+            :conditions =&gt; [&quot;#{exclude_self} #{klass.table_name}.id = #{Tagging.table_name}.taggable_id AND #{Tagging.table_name}.taggable_type = '#{klass.to_s}' AND #{Tagging.table_name}.tag_id = #{Tag.table_name}.id AND #{Tag.table_name}.name IN (?)&quot;, tags_to_find],
             :group      =&gt; &quot;#{klass.table_name}.id&quot;,
             :order      =&gt; &quot;count DESC&quot;
           }.update(options)</diff>
      <filename>lib/acts_as_taggable_on/acts_as_taggable_on.rb</filename>
    </modified>
    <modified>
      <diff>@@ -103,6 +103,20 @@ describe &quot;Acts As Taggable On&quot; do
       taggable1.find_related_tags_for(OtherTaggableModel).should include(taggable3)
       taggable1.find_related_tags_for(OtherTaggableModel).should_not include(taggable2)
     end
+    
+    it &quot;should not include the object itself in the list of related objects&quot; do
+      taggable1 = TaggableModel.create!(:name =&gt; &quot;Taggable 1&quot;)
+      taggable2 = TaggableModel.create!(:name =&gt; &quot;Taggable 2&quot;)
+
+      taggable1.tag_list = &quot;one&quot;
+      taggable1.save
+      
+      taggable2.tag_list = &quot;one, two&quot;
+      taggable2.save
+      
+      taggable1.find_related_tags.should include(taggable2)
+      taggable1.find_related_tags.should_not include(taggable1)
+    end
   end
   
   describe 'Tagging Contexts' do</diff>
      <filename>spec/acts_as_taggable_on/acts_as_taggable_on_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>7fe16ba64c2cabae924b2906a47946643712ee6d</id>
    </parent>
  </parents>
  <author>
    <name>Luke Francl</name>
    <email>luke@skywalker.local</email>
  </author>
  <url>http://github.com/mbleigh/acts-as-taggable-on/commit/b72efd05ff6a71c573e8edf983e4c00d27f3d8fc</url>
  <id>b72efd05ff6a71c573e8edf983e4c00d27f3d8fc</id>
  <committed-date>2009-02-03T16:55:45-08:00</committed-date>
  <authored-date>2008-12-08T16:22:04-08:00</authored-date>
  <message>add a condition so the model being related to isn't itself returned in the search results.

Signed-off-by: Michael Bleigh &lt;michael@intridea.com&gt;</message>
  <tree>b9427946e2e4d9b2a9bb6802b5e5997cd9137fcf</tree>
  <committer>
    <name>Michael Bleigh</name>
    <email>michael@intridea.com</email>
  </committer>
</commit>
