<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -57,14 +57,26 @@ module Sprockets
     end
     
     def to_s(constants = source_file.environment.constants)
-      line.chomp.gsub(/&lt;%=(.*?)%&gt;/) do
-        constant = $1.strip
-        if value = constants[constant]
-          value
-        else
-          raise UndefinedConstantError, &quot;couldn't find constant `#{constant}' in #{inspect}&quot;
-        end
-      end + $/
+      result = line.chomp
+      interpolate_constants!(result, constants)
+      strip_trailing_whitespace!(result)
+      result + $/
     end
+    
+    protected
+      def interpolate_constants!(result, constants)
+        result.gsub!(/&lt;%=(.*?)%&gt;/) do
+          constant = $1.strip
+          if value = constants[constant]
+            value
+          else
+            raise UndefinedConstantError, &quot;couldn't find constant `#{constant}' in #{inspect}&quot;
+          end
+        end
+      end
+      
+      def strip_trailing_whitespace!(result)
+        result.gsub!(/\s+$/, &quot;&quot;)
+      end
   end
 end</diff>
      <filename>lib/sprockets/source_line.rb</filename>
    </modified>
    <modified>
      <diff>@@ -82,4 +82,8 @@ class SourceLineTest &lt; Test::Unit::TestCase
       source_line('&lt;%= NONEXISTENT %&gt;').to_s(&quot;VERSION&quot; =&gt; &quot;1.0&quot;)
     end
   end
+  
+  def test_to_s_should_strip_trailing_whitespace_before_adding_line_ending
+    assert_equal &quot;hello();\n&quot;, source_line(&quot;hello();     \t  \r\n&quot;).to_s({})
+  end
 end</diff>
      <filename>test/test_source_line.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>7fc1208e0eb1d31d5ddd579abb90fcdfea0156eb</id>
    </parent>
  </parents>
  <author>
    <name>Sam Stephenson</name>
    <email>sam@37signals.com</email>
  </author>
  <url>http://github.com/sstephenson/sprockets/commit/95aad141d4bb31eb8fc36d63e7c682091f06f37f</url>
  <id>95aad141d4bb31eb8fc36d63e7c682091f06f37f</id>
  <committed-date>2009-02-16T10:00:23-08:00</committed-date>
  <authored-date>2009-02-16T10:00:23-08:00</authored-date>
  <message>Trim trailing whitespace in Sprockets::SourceLine#to_s</message>
  <tree>7a49470fc756df8e0bc25a63c2968b74a8baa595</tree>
  <committer>
    <name>Sam Stephenson</name>
    <email>sam@37signals.com</email>
  </committer>
</commit>
