idevicepair: Fix possible memleak in option parsing

If some arguments are passed multiple times, don't leak the memory used
for the value of the first arguments passed.
diff --git a/tools/idevicepair.c b/tools/idevicepair.c
index f34369e..b6f0751 100644
--- a/tools/idevicepair.c
+++ b/tools/idevicepair.c
@@ -104,6 +104,8 @@
 				print_usage(argc, argv);
 				exit(2);
 			}
+			if (udid)
+				free(udid);
 			udid = strdup(optarg);
 			break;
 		case 'd':