summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuka Perkov <luka@openwrt.org>2013-08-29 15:28:27 +0200
committerFelix Fietkau <nbd@openwrt.org>2013-08-29 17:17:15 +0200
commit814e09499e12edaea658f9f5594fe9917c0ecde4 (patch)
tree49b14873742c65aa3b56f505a9e887def481d946
parent2674941b06c1ec67f1aff1bff9212e1372106641 (diff)
downloadnetifd-814e09499e12edaea658f9f5594fe9917c0ecde4.tar.gz
bridge: fix corner case with network reload
After removing all ifname options from bridge interface and executing network reload the configuration was not applied properly on the system. With this change that is no longer a issue. Signed-off-by: Luka Perkov <luka@openwrt.org>
-rw-r--r--bridge.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/bridge.c b/bridge.c
index 05f2ad6..01c9a2c 100644
--- a/bridge.c
+++ b/bridge.c
@@ -454,12 +454,11 @@ bridge_config_init(struct device *dev)
device_set_present(&bst->dev, true);
}
- if (!bst->ifnames)
- return;
-
vlist_update(&bst->members);
- blobmsg_for_each_attr(cur, bst->ifnames, rem) {
- bridge_add_member(bst, blobmsg_data(cur));
+ if (bst->ifnames) {
+ blobmsg_for_each_attr(cur, bst->ifnames, rem) {
+ bridge_add_member(bst, blobmsg_data(cur));
+ }
}
vlist_flush(&bst->members);
}