<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,8 @@
+*Edge*
+
+* Added SQL escaping for :limit and :offset in MySQL [Jonathan Wiess]
+
+
 *2.1.0 (May 31st, 2008)*
 
 * Add ActiveRecord::Base.sti_name that checks ActiveRecord::Base#store_full_sti_class? and returns either the full or demodulized name. [rick]</diff>
      <filename>activerecord/CHANGELOG</filename>
    </modified>
    <modified>
      <diff>@@ -336,10 +336,11 @@ module ActiveRecord
 
       def add_limit_offset!(sql, options) #:nodoc:
         if limit = options[:limit]
+          limit = sanitize_limit(limit)
           unless offset = options[:offset]
             sql &lt;&lt; &quot; LIMIT #{limit}&quot;
           else
-            sql &lt;&lt; &quot; LIMIT #{offset}, #{limit}&quot;
+            sql &lt;&lt; &quot; LIMIT #{offset.to_i}, #{limit}&quot;
           end
         end
       end</diff>
      <filename>activerecord/lib/active_record/connection_adapters/mysql_adapter.rb</filename>
    </modified>
    <modified>
      <diff>@@ -118,7 +118,7 @@ class AdapterTest &lt; ActiveRecord::TestCase
     sql_inject = &quot;1, 7 procedure help()&quot;
     if current_adapter?(:MysqlAdapter)
       assert_equal &quot; LIMIT 1,7&quot;, @connection.add_limit_offset!(&quot;&quot;, :limit=&gt;sql_inject)
-      assert_equal &quot; LIMIT 7, 1&quot;, @connection.add_limit_offset!(&quot;&quot;, :limit=&gt;sql_inject, :offset=&gt;7)
+      assert_equal &quot; LIMIT 7, 1&quot;, @connection.add_limit_offset!(&quot;&quot;, :limit=&gt; '1 ; DROP TABLE USERS', :offset=&gt;7)
     else
       assert_equal &quot; LIMIT 1,7&quot;, @connection.add_limit_offset!(&quot;&quot;, :limit=&gt;sql_inject)
       assert_equal &quot; LIMIT 1,7 OFFSET 7&quot;, @connection.add_limit_offset!(&quot;&quot;, :limit=&gt;sql_inject, :offset=&gt;7)</diff>
      <filename>activerecord/test/cases/adapter_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>71528b1825ce5184b23d09f923cb72f4073ce8ed</id>
    </parent>
  </parents>
  <author>
    <name>David Heinemeier Hansson</name>
    <email>david@loudthinking.com</email>
  </author>
  <url>http://github.com/rails/rails/commit/3282bf3b5016f0c9028cfff1012e8c31a13b40b7</url>
  <id>3282bf3b5016f0c9028cfff1012e8c31a13b40b7</id>
  <committed-date>2008-06-01T09:15:11-07:00</committed-date>
  <authored-date>2008-06-01T09:15:11-07:00</authored-date>
  <message>Added SQL escaping for :limit and :offset in MySQL [Jonathan Wiess]</message>
  <tree>164119185308c4838a405a0034f67f924ee7d181</tree>
  <committer>
    <name>David Heinemeier Hansson</name>
    <email>david@loudthinking.com</email>
  </committer>
</commit>
