[Cmake-commits] [cmake-commits] david.cole committed cmCPackTGZGenerator.cxx 1.22 1.23 cmCPackTarCompressGenerator.cxx 1.10 1.11
cmake-commits at cmake.org
cmake-commits at cmake.org
Fri Oct 30 10:31:57 EDT 2009
Update of /cvsroot/CMake/CMake/Source/CPack
In directory public:/mounts/ram/cvs-serv1448/Source/CPack
Modified Files:
cmCPackTGZGenerator.cxx cmCPackTarCompressGenerator.cxx
Log Message:
Fix more mismatched new[] / delete[] (eliminate invalid auto_ptr use) to correct valgrind reported memory issues.
Index: cmCPackTGZGenerator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CPack/cmCPackTGZGenerator.cxx,v
retrieving revision 1.22
retrieving revision 1.23
diff -C 2 -d -r1.22 -r1.23
*** cmCPackTGZGenerator.cxx 26 Oct 2009 17:49:20 -0000 1.22
--- cmCPackTGZGenerator.cxx 30 Oct 2009 14:31:53 -0000 1.23
***************
*** 219,223 ****
};
! // Ok, this libtar is not const safe. Make a non-const copy of outFileName
char* realName = new char[ strlen(outFileName) + 1 ];
strcpy(realName, outFileName);
--- 219,223 ----
};
! // This libtar is not const safe. Make a non-const copy of outFileName
char* realName = new char[ strlen(outFileName) + 1 ];
strcpy(realName, outFileName);
***************
*** 242,245 ****
--- 242,247 ----
}
+ delete [] realName;
+
std::vector<std::string>::const_iterator fileIt;
for ( fileIt = files.begin(); fileIt != files.end(); ++ fileIt )
***************
*** 257,261 ****
<< strerror(errno) << std::endl);
tar_close(t);
- delete [] realName;
return 0;
}
--- 259,262 ----
***************
*** 266,270 ****
<< strerror(errno) << std::endl);
tar_close(t);
- delete [] realName;
return 0;
}
--- 267,270 ----
***************
*** 274,281 ****
cmCPackLogger(cmCPackLog::LOG_ERROR, "Problem with tar_close(): "
<< strerror(errno) << std::endl);
- delete [] realName;
return 0;
}
- delete [] realName;
return 1;
}
--- 274,279 ----
Index: cmCPackTarCompressGenerator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CPack/cmCPackTarCompressGenerator.cxx,v
retrieving revision 1.10
retrieving revision 1.11
diff -C 2 -d -r1.10 -r1.11
*** cmCPackTarCompressGenerator.cxx 28 Sep 2009 15:42:51 -0000 1.10
--- cmCPackTarCompressGenerator.cxx 30 Oct 2009 14:31:54 -0000 1.11
***************
*** 24,28 ****
#include <cmcompress/cmcompress.h>
#include <libtar/libtar.h>
- #include <memory> // auto_ptr
#include <fcntl.h>
#include <errno.h>
--- 24,27 ----
***************
*** 166,172 ****
};
! // Ok, this libtar is not const safe. for now use auto_ptr hack
char* realName = new char[ strlen(outFileName) + 1 ];
- std::auto_ptr<char> realNamePtr(realName);
strcpy(realName, outFileName);
int flags = O_WRONLY | O_CREAT;
--- 165,170 ----
};
! // This libtar is not const safe. Make a non-const copy of outFileName
char* realName = new char[ strlen(outFileName) + 1 ];
strcpy(realName, outFileName);
int flags = O_WRONLY | O_CREAT;
***************
*** 186,192 ****
--- 184,193 ----
cmCPackLogger(cmCPackLog::LOG_ERROR, "Problem with tar_open(): "
<< strerror(errno) << std::endl);
+ delete [] realName;
return 0;
}
+ delete [] realName;
+
std::vector<std::string>::const_iterator fileIt;
for ( fileIt = files.begin(); fileIt != files.end(); ++ fileIt )
More information about the Cmake-commits
mailing list