diff --git a/gtsam/inference/OrderingUnordered.cpp b/gtsam/inference/OrderingUnordered.cpp index 94b3f5733..e790a9055 100644 --- a/gtsam/inference/OrderingUnordered.cpp +++ b/gtsam/inference/OrderingUnordered.cpp @@ -102,7 +102,9 @@ namespace gtsam { gttic(Fill_Ordering); // Convert elimination ordering in p to an ordering OrderingUnordered result; - result.assign(p.begin(), p.end() - 1); + result.resize(nVars); + for(size_t j = 0; j < nVars; ++j) + result[j] = keys[p[j]]; gttoc(Fill_Ordering); return result; diff --git a/gtsam/symbolic/tests/testSymbolicBayesTree.cpp b/gtsam/symbolic/tests/testSymbolicBayesTree.cpp index 30c9055f2..250a40e83 100644 --- a/gtsam/symbolic/tests/testSymbolicBayesTree.cpp +++ b/gtsam/symbolic/tests/testSymbolicBayesTree.cpp @@ -230,7 +230,7 @@ void getAllCliques(const SymbolicBayesTreeUnordered::sharedClique& subtree, Symb } /* ************************************************************************* */ -TEST_UNSAFE( BayesTree, shortcutCheck ) +TEST( BayesTree, shortcutCheck ) { const Key _A_=6, _B_=5, _C_=4, _D_=3, _E_=2, _F_=1, _G_=0; SymbolicFactorGraphUnordered chain = list_of @@ -244,7 +244,7 @@ TEST_UNSAFE( BayesTree, shortcutCheck ) SymbolicBayesTreeUnordered bayesTree = *chain.eliminateMultifrontal( OrderingUnordered(list_of(_G_)(_F_)(_E_)(_D_)(_C_)(_B_)(_A_))); - //bayesTree.print("BayesTree"); + bayesTree.print("BayesTree"); //bayesTree.saveGraph("BT1.dot"); SymbolicBayesTreeUnordered::sharedClique rootClique = bayesTree.roots().front();