From f92df58d3d97bb75d7b12437d53dd97acfd01095 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Wed, 2 May 2007 22:22:23 +0000 Subject: ifupdown: small optimization (avoid doing useless work if we are not going to update state file) --- networking/ifupdown.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'networking') diff --git a/networking/ifupdown.c b/networking/ifupdown.c index 0c822e2a1..5b2251777 100644 --- a/networking/ifupdown.c +++ b/networking/ifupdown.c @@ -1239,8 +1239,10 @@ int ifupdown_main(int argc, char **argv) if (!okay && !FORCE) { bb_error_msg("ignoring unknown interface %s", liface); any_failures = 1; - } else { + } else if (!NO_ACT) { /* update the state file */ + FILE *state_fp; + llist_t *state; llist_t *state_list = read_iface_state(); llist_t *iface_state = find_iface_state(state_list, iface); @@ -1259,17 +1261,15 @@ int ifupdown_main(int argc, char **argv) } /* Actually write the new state */ - if (!NO_ACT) { - FILE *state_fp = xfopen("/var/run/ifstate", "w"); - llist_t *state = state_list; - while (state) { - if (state->data) { - fprintf(state_fp, "%s\n", state->data); - } - state = state->link; + state_fp = xfopen("/var/run/ifstate", "w"); + state = state_list; + while (state) { + if (state->data) { + fprintf(state_fp, "%s\n", state->data); } - fclose(state_fp); + state = state->link; } + fclose(state_fp); llist_free(state_list, free); } } -- cgit v1.2.3