changeset 2568:5563419bd36a draft

Fix a potential segfault when reloading configurations. Thanks to Eelco Dolstra for the patch.
author Roy Marples <roy@marples.name>
date Thu, 03 Jul 2014 10:07:35 +0000
parents 91bec8cafd6d
children 7af1b6b4b883
files dhcpcd.c
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/dhcpcd.c	Thu Jul 03 09:47:42 2014 +0000
+++ b/dhcpcd.c	Thu Jul 03 10:07:35 2014 +0000
@@ -139,14 +139,14 @@
 	struct dhcp_opt *opt;
 
 	if (ctx->ifac) {
-		for (ctx->ifac--; ctx->ifac >= 0; ctx->ifac--)
-			free(ctx->ifav[ctx->ifac]);
+		for (; ctx->ifac > 0; ctx->ifac--)
+			free(ctx->ifav[ctx->ifac - 1]);
 		free(ctx->ifav);
 		ctx->ifav = NULL;
 	}
 	if (ctx->ifdc) {
-		for (ctx->ifdc--; ctx->ifdc >= 0; ctx->ifdc--)
-			free(ctx->ifdv[ctx->ifdc]);
+		for (; ctx->ifdc > 0; ctx->ifdc--)
+			free(ctx->ifdv[ctx->ifdc - 1]);
 		free(ctx->ifdv);
 		ctx->ifdv = NULL;
 	}