Fix memory leak in psa_copy_key
diff --git a/library/psa_crypto.c b/library/psa_crypto.c
index 3d86e85..d9d4870 100644
--- a/library/psa_crypto.c
+++ b/library/psa_crypto.c
@@ -1228,16 +1228,15 @@
                                            psa_get_key_bits( source ) );
     buffer = mbedtls_calloc( 1, buffer_size );
     if( buffer == NULL )
-    {
-        status = PSA_ERROR_INSUFFICIENT_MEMORY;
-        goto exit;
-    }
+        return( PSA_ERROR_INSUFFICIENT_MEMORY );
     status = psa_internal_export_key( source, buffer, buffer_size, &length, 0 );
     if( status != PSA_SUCCESS )
         goto exit;
     status = psa_import_key( target, source->type, buffer, length );
 
 exit:
+    mbedtls_platform_zeroize( buffer, buffer_size );
+    mbedtls_free( buffer );
     return( status );
 }