]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_codesigning/lib/diskimagerep.cpp
Security-59306.140.5.tar.gz
[apple/security.git] / OSX / libsecurity_codesigning / lib / diskimagerep.cpp
index be2443d12951d1125c209818c5ff508ca824f9ef..86b056c063f6ac11d54cc424a14ceaddad3de7ad 100644 (file)
@@ -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