From 15ac43b3b76b71acee7eeb3cdb50f58e477bc0dc Mon Sep 17 00:00:00 2001 From: Richard Whitehouse Date: Sat, 16 Apr 2011 21:04:59 +0100 Subject: [PATCH] Fix bridge link comparator --- src/topology/model/topology.cc | 36 ++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/src/topology/model/topology.cc b/src/topology/model/topology.cc index 68bfab9..7ffd858 100644 --- a/src/topology/model/topology.cc +++ b/src/topology/model/topology.cc @@ -98,20 +98,44 @@ Topology::~Topology(){ } bool Topology::BridgeLinkCompare::operator()( BridgeLink const &lhs, BridgeLink const &rhs) { - if(lhs.first < lhs.first){ + if(lhs.first < lhs.second){ if(rhs.first < rhs.second){ - return (lhs.first < rhs.first) ? true : (lhs.second < rhs.second); + if(lhs.first < rhs.first){ + return true; + } else if(rhs.first < lhs.first){ + return false; + } else { + return lhs.second < rhs.second; + } } else { - return (lhs.first < rhs.second) ? true : (lhs.second < rhs.first); + if(lhs.first < rhs.second){ + return true; + } else if(rhs.second < lhs.first){ + return false; + } else { + return lhs.second < rhs.first; + } } } else { if(rhs.first < rhs.second){ - return (lhs.second < rhs.first) ? true : (lhs.first < rhs.second); + if(lhs.second < rhs.first){ + return true; + } else if(rhs.first < lhs.second){ + return false; + } else { + return lhs.first < rhs.second; + } } else { - return (lhs.second < rhs.second) ? true : (lhs.first < rhs.first); + if(lhs.second < rhs.second){ + return true; + } else if(rhs.second < lhs.second){ + return false; + } else { + return lhs.first < rhs.first; + } } } } - } + -- 2.34.1