- int visited_num = -1;
- if ((!current_pair->exploration_started)
- && (visited_num = this->insertVisitedPair(
- reached_pair, current_pair.get())) != -1) {
- if (dot_output != nullptr){
- fprintf(dot_output, "\"%d\" -> \"%d\" [%s];\n",
- this->previousPair_, visited_num,
- this->previousRequest_.c_str());
- fflush(dot_output);
+ if (not current_pair->exploration_started) {
+ int visited_num = this->insertVisitedPair(reached_pair, current_pair.get());
+ if (visited_num != -1) {
+ if (dot_output != nullptr) {
+ fprintf(dot_output, "\"%d\" -> \"%d\" [%s];\n", this->previousPair_, visited_num,
+ this->previousRequest_.c_str());
+ fflush(dot_output);
+ }
+ XBT_DEBUG("Pair already visited (equal to pair %d), exploration on the current path stopped.", visited_num);
+ current_pair->requests = 0;
+ this->backtrack();
+ continue;