diff --git a/Driver/HTMLDiagnostics.cpp b/Driver/HTMLDiagnostics.cpp
index dbc1567..2f1b6e3 100644
--- a/Driver/HTMLDiagnostics.cpp
+++ b/Driver/HTMLDiagnostics.cpp
@@ -224,13 +224,8 @@
   
   // Emit the HTML to disk.
 
-  for (RewriteBuffer::iterator I = Buf->begin(), E = Buf->end(); I!=E; ++I) {
-    // Expand tabs.
-    if (*I == '\t')
-      os << "   ";
-    else  
+  for (RewriteBuffer::iterator I = Buf->begin(), E = Buf->end(); I!=E; ++I)
       os << *I;
-  }
 }
 
 void HTMLDiagnostics::HandlePiece(Rewriter& R,
diff --git a/include/clang/Rewrite/HTMLRewrite.h b/include/clang/Rewrite/HTMLRewrite.h
index a47d569..1ebbade 100644
--- a/include/clang/Rewrite/HTMLRewrite.h
+++ b/include/clang/Rewrite/HTMLRewrite.h
@@ -49,12 +49,9 @@
                       const char *StartTag, const char *EndTag);
   
   /// EscapeText - HTMLize a specified file so that special characters are
-  /// are translated so that they are not interpreted as HTML tags.  In this
-  /// version tabs are not replaced with spaces by default, as this can
-  /// introduce a serious performance overhead as the amount of replaced
-  /// text can be very large.
+  /// are translated so that they are not interpreted as HTML tags.
   void EscapeText(Rewriter& R, unsigned FileID,
-                  bool EscapeSpaces = false, bool ReplacesTabs = false);
+                  bool EscapeSpaces = false, bool ReplacesTabs = true);
 
   /// EscapeText - HTMLized the provided string so that special characters
   ///  in 's' are not interpreted as HTML tags.  Unlike the version of
