Fixed cleanup of MachineAddresses and MachinePorts.
authorArmin Novak <armin.novak@thincast.com>
Wed, 24 Jun 2015 10:12:40 +0000 (12:12 +0200)
committerArmin Novak <armin.novak@thincast.com>
Wed, 24 Jun 2015 10:14:06 +0000 (12:14 +0200)
libfreerdp/common/assistance.c

index 1c7a417..6eb124d 100644 (file)
@@ -224,6 +224,18 @@ int freerdp_assistance_parse_address_list(rdpAssistanceFile* file, char* list)
 
        ret = 1;
 out:
+       if (file->MachineAddresses)
+       {
+               for (i=0; i<count; i++)
+                       free (file->MachineAddresses[i]);
+       }
+       free (file->MachineAddresses);
+       free (file->MachinePorts);
+
+       file->MachineCount = 0;
+       file->MachinePorts = NULL;
+       file->MachineAddresses = NULL;
+
        free(tokens);
        free(str);
        return ret;