Fix use-after-free introduced by me being an idiot.

llvm-svn: 150461
This commit is contained in:
Ted Kremenek 2012-02-14 06:54:46 +00:00
parent 29d6ed6416
commit b05119cb00

View File

@ -44,16 +44,14 @@ CXDiagnosticImpl::~CXDiagnosticImpl() {}
namespace {
class CXDiagnosticCustomNoteImpl : public CXDiagnosticImpl {
CXString Message;
std::string Message;
CXSourceLocation Loc;
public:
CXDiagnosticCustomNoteImpl(StringRef Msg, CXSourceLocation L)
: CXDiagnosticImpl(CustomNoteDiagnosticKind),
Message(createCXString(Msg)), Loc(L) {}
Message(Msg), Loc(L) {}
virtual ~CXDiagnosticCustomNoteImpl() {
clang_disposeString(Message);
}
virtual ~CXDiagnosticCustomNoteImpl() {}
CXDiagnosticSeverity getSeverity() const {
return CXDiagnostic_Note;
@ -64,7 +62,7 @@ public:
}
CXString getSpelling() const {
return Message;
return createCXString(StringRef(Message), false);
}
CXString getDiagnosticOption(CXString *Disable) const {