X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/79b9da22a1f4b26279940d285c1bc28ce4e99252..918dce6758f4f57e8c0b650cb5eead501f6684ca:/OSX/libsecurity_codesigning/lib/diskimagerep.cpp?ds=sidebyside diff --git a/OSX/libsecurity_codesigning/lib/diskimagerep.cpp b/OSX/libsecurity_codesigning/lib/diskimagerep.cpp index be2443d1..86b056c0 100644 --- a/OSX/libsecurity_codesigning/lib/diskimagerep.cpp +++ b/OSX/libsecurity_codesigning/lib/diskimagerep.cpp @@ -69,13 +69,19 @@ bool DiskImageRep::readHeader(FileDesc& fd, UDIFFileHeader& header) // Object management. // DiskImageRep::DiskImageRep(const char *path) - : SingleDiskRep(path) + : SingleDiskRep(path), mSigningData(NULL) { this->setup(); } +DiskImageRep::~DiskImageRep() +{ + free((void*)mSigningData); +} + void DiskImageRep::setup() { + free((void*)mSigningData); mSigningData = NULL; // the UDIF "header" is in fact the last 512 bytes of the file, with no particular alignment @@ -211,7 +217,7 @@ void DiskImageRep::Writer::component(CodeDirectory::SpecialSlot slot, CFDataRef // void DiskImageRep::Writer::flush() { - delete mSigningData; // ditch previous blob just in case + free((void*)mSigningData); // ditch previous blob just in case mSigningData = Maker::make(); // assemble new signature SuperBlob // write signature superblob