]> asedeno.scripts.mit.edu Git - PuTTY.git/blobdiff - pageant.c
A few more missing frees.
[PuTTY.git] / pageant.c
index e7430e7865faac93a173f15ede19442d76ea54cf..2d9a740236739923800f4d2cfc79a540302c5fdb 100644 (file)
--- a/pageant.c
+++ b/pageant.c
@@ -1313,11 +1313,15 @@ int pageant_add_keyfile(Filename *filename, const char *passphrase,
        if (keylist) {
            if (keylistlen < 4) {
                *retstr = dupstr("Received broken key list from agent");
+                sfree(keylist);
+                sfree(blob);
                return PAGEANT_ACTION_FAILURE;
            }
            nkeys = toint(GET_32BIT(keylist));
            if (nkeys < 0) {
                *retstr = dupstr("Received broken key list from agent");
+                sfree(keylist);
+                sfree(blob);
                return PAGEANT_ACTION_FAILURE;
            }
            p = keylist + 4;