From f47393c66bb1810a9916fa755bc5830fb9d24d63 Mon Sep 17 00:00:00 2001 From: Thomas Jarosch Date: Thu, 1 Sep 2011 21:56:53 +0200 Subject: CTest: Fix memory leaks on error Credit goes to "cppcheck". Signed-off-by: Thomas Jarosch --- Source/CTest/cmCTestRunTest.cxx | 2 ++ Source/CTest/cmParsePHPCoverage.cxx | 1 + Source/cmCTest.cxx | 2 ++ 3 files changed, 5 insertions(+) diff --git a/Source/CTest/cmCTestRunTest.cxx b/Source/CTest/cmCTestRunTest.cxx index 60695da..81f18b0 100644 --- a/Source/CTest/cmCTestRunTest.cxx +++ b/Source/CTest/cmCTestRunTest.cxx @@ -93,6 +93,7 @@ void cmCTestRunTest::CompressOutput() ret = deflateInit(&strm, -1); //default compression level if (ret != Z_OK) { + delete[] out; return; } @@ -106,6 +107,7 @@ void cmCTestRunTest::CompressOutput() { cmCTestLog(this->CTest, ERROR_MESSAGE, "Error during output " "compression. Sending uncompressed output." << std::endl); + delete[] out; return; } diff --git a/Source/CTest/cmParsePHPCoverage.cxx b/Source/CTest/cmParsePHPCoverage.cxx index 32c1ec1..593b2d1 100644 --- a/Source/CTest/cmParsePHPCoverage.cxx +++ b/Source/CTest/cmParsePHPCoverage.cxx @@ -159,6 +159,7 @@ bool cmParsePHPCoverage::ReadFileInformation(std::ifstream& in) // read open quote if(in.get(c) && c != '"') { + delete[] s; return false; } // read the string data diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx index 75a564e..702ba10 100644 --- a/Source/cmCTest.cxx +++ b/Source/cmCTest.cxx @@ -3096,6 +3096,7 @@ bool cmCTest::CompressString(std::string& str) ret = deflateInit(&strm, -1); //default compression level if (ret != Z_OK) { + delete[] out; return false; } @@ -3109,6 +3110,7 @@ bool cmCTest::CompressString(std::string& str) { cmCTestLog(this, ERROR_MESSAGE, "Error during gzip compression." << std::endl); + delete[] out; return false; } -- cgit v0.12 From 4868921bc2b5ad85221d51d585bb2116a2826915 Mon Sep 17 00:00:00 2001 From: Thomas Jarosch Date: Thu, 1 Sep 2011 21:57:30 +0200 Subject: Fix file() command descriptor leak on error Credit goes to "cppcheck". Signed-off-by: Thomas Jarosch --- Source/cmFileCommand.cxx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 9a3de9b..3b63906 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -2982,6 +2982,7 @@ cmFileCommand::HandleUploadCommand(std::vector const& args) std::string errStr = "UPLOAD cannot stat file '"; errStr += filename + "'."; this->SetError(errStr.c_str()); + fclose(fin); return false; } @@ -2991,6 +2992,7 @@ cmFileCommand::HandleUploadCommand(std::vector const& args) if(!curl) { this->SetError("UPLOAD error initializing curl."); + fclose(fin); return false; } -- cgit v0.12 From d1751fbf17d2c0e945f696b920fe0cf2a8ad14b2 Mon Sep 17 00:00:00 2001 From: Thomas Jarosch Date: Thu, 1 Sep 2011 21:59:57 +0200 Subject: ccmake: Fix off-by-one memory access error Credit goes to "cppcheck". Signed-off-by: Thomas Jarosch --- Source/CursesDialog/cmCursesLongMessageForm.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/CursesDialog/cmCursesLongMessageForm.cxx b/Source/CursesDialog/cmCursesLongMessageForm.cxx index 1c48d8c..0e2cd22 100644 --- a/Source/CursesDialog/cmCursesLongMessageForm.cxx +++ b/Source/CursesDialog/cmCursesLongMessageForm.cxx @@ -68,7 +68,7 @@ void cmCursesLongMessageForm::UpdateStatusBar() } else { - width = cmCursesMainForm::MAX_WIDTH; + width = cmCursesMainForm::MAX_WIDTH-1; } bar[width] = '\0'; -- cgit v0.12