From cea355a54de7f6be2b9fe9f04315e11fb93fb4e9 Mon Sep 17 00:00:00 2001 From: Erik Fonnesbeck Date: Thu, 11 Nov 2010 02:53:35 -0700 Subject: Separate this into the original case with the floating rule cases above it to fix some scenarios where the order was still wrong. --- etc/inc/pfsense-utils.inc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/etc/inc/pfsense-utils.inc b/etc/inc/pfsense-utils.inc index 7c0bdc0..3a6eb1a 100644 --- a/etc/inc/pfsense-utils.inc +++ b/etc/inc/pfsense-utils.inc @@ -2123,12 +2123,14 @@ function filter_rules_sort() { unset($config['filter']['rule'][$i]['seq']); } function filter_rules_compare($a, $b) { - if ($a['interface'] == $b['interface'] || ( isset($a['floating']) && isset($b['floating']) )) + if (isset($a['floating']) && isset($b['floating'])) return $a['seq'] - $b['seq']; else if (isset($a['floating'])) return -1; else if (isset($b['floating'])) return 1; + else if ($a['interface'] == $b['interface']) + return $a['seq'] - $b['seq']; else return compare_interface_friendly_names($a['interface'], $b['interface']); } -- cgit v1.1