Bug fixes
[satune.git] / src / ASTAnalyses / orderanalysis.cc
index 57443c12cee8136980058cc880596b226f62cced..60103759b0bfc61b5d060c412312c57cf3011b0f 100644 (file)
@@ -84,15 +84,19 @@ bool isMustBeTrueNode(OrderNode *node) {
        HSIteratorOrderEdge *iterator = node->inEdges.iterator();
        while (iterator->hasNext()) {
                OrderEdge *edge = iterator->next();
        HSIteratorOrderEdge *iterator = node->inEdges.iterator();
        while (iterator->hasNext()) {
                OrderEdge *edge = iterator->next();
-               if (!edge->mustPos)
+               if (!edge->mustPos) {
+                       delete iterator;
                        return false;
                        return false;
+               }
        }
        delete iterator;
        iterator = node->outEdges.iterator();
        while (iterator->hasNext()) {
                OrderEdge *edge = iterator->next();
        }
        delete iterator;
        iterator = node->outEdges.iterator();
        while (iterator->hasNext()) {
                OrderEdge *edge = iterator->next();
-               if (!edge->mustPos)
+               if (!edge->mustPos) {
+                       delete iterator;
                        return false;
                        return false;
+               }
        }
        delete iterator;
        return true;
        }
        delete iterator;
        return true;