base-files: fix configuration generation of network if "bridge" exists
[openwrt/staging/ynezz.git] / package / base-files / files / bin / config_generate
index 604c49a7090d670bab9fbd1941cdddb86ac5f014..be688a4ba3106bb39a904f62f4194dbb00dd9696 100755 (executable)
@@ -109,7 +109,7 @@ generate_network() {
                ports="$ifname"
        }
 
-       [ -n "$ports" ] && {
+       [ -n "$ports" -a -z "$bridge" ] && {
                uci -q batch <<-EOF
                        add network device
                        set network.@device[-1].name='br-$1'
@@ -123,11 +123,12 @@ generate_network() {
        }
 
        [ -n "$bridge" ] && {
+               [ -z "$ports" ] && ports="$ifname"
                if [ -z "$vlan" ]; then
                        bridge_vlan_id=$((bridge_vlan_id + 1))
                        vlan=$bridge_vlan_id
                fi
-               generate_bridge_vlan $1 $bridge "$ifname" $vlan
+               generate_bridge_vlan $1 $bridge "$ports" $vlan
                ifname=$bridge.$vlan
                type=""
        }