r207031 - Fix leak introduced in r194610, found by LSan.

Nico Weber nicolasweber at gmx.de
Wed Apr 23 14:41:51 PDT 2014


Author: nico
Date: Wed Apr 23 16:41:51 2014
New Revision: 207031

URL: http://llvm.org/viewvc/llvm-project?rev=207031&view=rev
Log:
Fix leak introduced in r194610, found by LSan.

LSan folks: LSan pointed to
    #0 0x4953e0 in operator new[](unsigned long) llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:64
    #1 0x7fb82af5372f in clang::RewriteRope::MakeRopeString(char const*, char const*) llvm/tools/clang/lib/Rewrite/Core/RewriteRope.cpp:796
instead of to the actual leak, which made tracking this down slower than
it could have been.

Modified:
    cfe/trunk/include/clang/Index/CommentToXML.h
    cfe/trunk/lib/Index/CommentToXML.cpp

Modified: cfe/trunk/include/clang/Index/CommentToXML.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Index/CommentToXML.h?rev=207031&r1=207030&r2=207031&view=diff
==============================================================================
--- cfe/trunk/include/clang/Index/CommentToXML.h (original)
+++ cfe/trunk/include/clang/Index/CommentToXML.h Wed Apr 23 16:41:51 2014
@@ -29,6 +29,7 @@ class CommentToXMLConverter {
 
 public:
   CommentToXMLConverter() : FormatContext(0), FormatInMemoryUniqueId(0) {}
+  ~CommentToXMLConverter();
 
   void convertCommentToHTML(const comments::FullComment *FC,
                             SmallVectorImpl<char> &HTML,

Modified: cfe/trunk/lib/Index/CommentToXML.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/CommentToXML.cpp?rev=207031&r1=207030&r2=207031&view=diff
==============================================================================
--- cfe/trunk/lib/Index/CommentToXML.cpp (original)
+++ cfe/trunk/lib/Index/CommentToXML.cpp Wed Apr 23 16:41:51 2014
@@ -1136,6 +1136,10 @@ void CommentASTToXMLConverter::appendToR
   Result << "]]>";
 }
 
+CommentToXMLConverter::~CommentToXMLConverter() {
+  delete FormatContext;
+}
+
 void CommentToXMLConverter::convertCommentToHTML(const FullComment *FC,
                                                  SmallVectorImpl<char> &HTML,
                                                  const ASTContext &Context) {





More information about the cfe-commits mailing list