From: Jo-Philipp Wich Date: Sat, 30 May 2009 00:44:04 +0000 (+0000) Subject: modules/admin-full: fix bridge info on interface status page if multiple bridges... X-Git-Tag: 0.9.0~279 X-Git-Url: https://git.archive.openwrt.org/?a=commitdiff_plain;h=44171fde222868b68a880aec8bb375a1acc0e2fc;p=project%2Fluci.git modules/admin-full: fix bridge info on interface status page if multiple bridges are present on the system --- diff --git a/modules/admin-full/luasrc/view/admin_status/interfaces.htm b/modules/admin-full/luasrc/view/admin_status/interfaces.htm index 99d5ba824..482aa0c0c 100644 --- a/modules/admin-full/luasrc/view/admin_status/interfaces.htm +++ b/modules/admin-full/luasrc/view/admin_status/interfaces.htm @@ -143,16 +143,22 @@ $Id$ function get_brinfo(s) local b = { } - for l in luci.util.execi("brctl show br-%s" % s['.name']) do + local m = false + for l in luci.util.execi("brctl show") do if not l:match("STP") then - local r = luci.util.split(l, "%s+", nil, true) - if #r > 2 then - b.name = r[1] - b.id = r[2] - b.stp = r[3] == "yes" - b.ifnames = { r[4] } - else - b.ifnames[#b.ifnames+1] = r[2] + if m and l:match("^[a-z]") then + break + elseif m or l:match("^br%%-%s" % s['.name']) then + m = true + local r = luci.util.split(l, "%s+", nil, true) + if #r > 2 then + b.name = r[1] + b.id = r[2] + b.stp = r[3] == "yes" + b.ifnames = { r[4] } + else + b.ifnames[#b.ifnames+1] = r[2] + end end end end @@ -228,9 +234,9 @@ $Id$ <% for _, b in ipairs(bridge_ifs) do br = get_brinfo(b) - dev = br.name + dev = br and br.name - if devinfo and devinfo[dev] then + if br and devinfo and devinfo[dev] then %>

<%:a_s_if_bridge Bridge%> <%=br.name%>