diff --git a/usr/local/www/interfaces_assign.php b/usr/local/www/interfaces_assign.php index 2e368e4af1..33032ec862 100755 --- a/usr/local/www/interfaces_assign.php +++ b/usr/local/www/interfaces_assign.php @@ -262,20 +262,23 @@ if ($_GET['act'] == "del") { services_dhcpd_configure(); } - if ($config['filter']['rule'] > 0) - foreach ($config['filter']['rule'] as $x => $rule) { + if ($config['filter']['rule'] > 0) { + foreach ($config['filter']['rule'] as $x => $rule) { if($rule['interface'] == $id) unset($config['filter']['rule'][$x]); + } } - if ($config['nat']['advancedoutbound']['rule'] > 0) - foreach ($config['nat']['advancedoutbound']['rule'] as $x => $rule) { + if (is_array($config['nat']['advancedoutbound']) && $config['nat']['advancedoutbound']['rule'] > 0) { + foreach ($config['nat']['advancedoutbound']['rule'] as $x => $rule) { if($rule['interface'] == $id) unset($config['nat']['advancedoutbound']['rule'][$x]['interface']); - } - if (count($config['nat']['rule']) > 0) - foreach ($config['nat']['rule'] as $x => $rule) { + } + } + if (count(is_array($config['nat']['rule']) && $config['nat']['rule']) > 0) { + foreach ($config['nat']['rule'] as $x => $rule) { if($rule['interface'] == $id) unset($config['nat']['rule'][$x]['interface']); + } } write_config();