diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
index e035bd4..7e7f94a 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
@@ -217,7 +217,7 @@
 		case 'c':
 			if (no_clientid) show_usage();
 			len = strlen(optarg) > 255 ? 255 : strlen(optarg);
-			if (client_config.clientid) free(client_config.clientid);
+			free(client_config.clientid);
 			client_config.clientid = xmalloc(len + 2);
 			client_config.clientid[OPT_CODE] = DHCP_CLIENT_ID;
 			client_config.clientid[OPT_LEN] = len;
@@ -230,7 +230,7 @@
 			break;
 		case 'V':
 			len = strlen(optarg) > 255 ? 255 : strlen(optarg);
-			if (client_config.vendorclass) free(client_config.vendorclass);
+			free(client_config.vendorclass);
 			client_config.vendorclass = xmalloc(len + 2);
 			client_config.vendorclass[OPT_CODE] = DHCP_VENDOR;
 			client_config.vendorclass[OPT_LEN] = len;
@@ -245,7 +245,7 @@
 		case 'h':
 		case 'H':
 			len = strlen(optarg) > 255 ? 255 : strlen(optarg);
-			if (client_config.hostname) free(client_config.hostname);
+			free(client_config.hostname);
 			client_config.hostname = xmalloc(len + 2);
 			client_config.hostname[OPT_CODE] = DHCP_HOST_NAME;
 			client_config.hostname[OPT_LEN] = len;
@@ -253,7 +253,7 @@
 			break;
 		case 'F':
 			len = strlen(optarg) > 255 ? 255 : strlen(optarg);
-			if (client_config.fqdn) free(client_config.fqdn);
+			free(client_config.fqdn);
 			client_config.fqdn = xmalloc(len + 5);
 			client_config.fqdn[OPT_CODE] = DHCP_FQDN;
 			client_config.fqdn[OPT_LEN] = len + 3;
diff --git a/networking/udhcp/files.c b/networking/udhcp/files.c
index 01534f2..416b1fe 100644
--- a/networking/udhcp/files.c
+++ b/networking/udhcp/files.c
@@ -62,7 +62,7 @@
 {
 	char **dest = arg;
 
-	if (*dest) free(*dest);
+	free(*dest);
 	*dest = strdup(line);
 
 	return 1;
