From: Hans Wennborg Date: Mon, 11 Apr 2016 20:53:59 +0000 (+0000) Subject: libclang: fix two memory leaks (PR26292) X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=634da19447e38e04accee3e70bc5a26d56b3fbbd;p=clang libclang: fix two memory leaks (PR26292) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@265994 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/libclang/CIndex.cpp b/tools/libclang/CIndex.cpp index ef93489710..a1e21e650f 100644 --- a/tools/libclang/CIndex.cpp +++ b/tools/libclang/CIndex.cpp @@ -3571,12 +3571,13 @@ static const ExprEvalResult* evaluateExpr(Expr *expr, CXCursor C) { rettype = callExpr->getCallReturnType(ctx); if (rettype->isVectorType() || callExpr->getNumArgs() > 1) { + clang_EvalResult_dispose((CXEvalResult *)result); return nullptr; } if (rettype->isIntegralType(ctx) || rettype->isRealFloatingType()) { if(callExpr->getNumArgs() == 1 && - !callExpr->getArg(0)->getType()->isIntegralType(ctx)){ - + !callExpr->getArg(0)->getType()->isIntegralType(ctx)) { + clang_EvalResult_dispose((CXEvalResult *)result); return nullptr; } } else if(rettype.getAsString() == "CFStringRef") {