Skip to content

Commit 0f189eb

Browse files
committed
fix: Remove zeros from the order and order.out components returned by dfs()
1 parent fade622 commit 0f189eb

2 files changed

Lines changed: 5 additions & 1 deletion

File tree

R/structural.properties.R

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2309,6 +2309,9 @@ dfs <- function(graph, root, mode = c("out", "in", "all", "total"),
23092309
if (order) res$order <- V(graph)[.env$res$order, na_ok = TRUE]
23102310
if (order.out) res$order.out <- V(graph)[.env$res$order.out, na_ok = TRUE]
23112311
if (father) res$father <- create_vs(graph, res$father, na_ok = TRUE)
2312+
} else {
2313+
if (order) res$order <- res$order[res$order != 0]
2314+
if (order.out) res$order.out <- res$order.out[res$order.out != 0]
23122315
}
23132316

23142317
if (igraph_opt("add.vertex.names") && is_named(graph)) {

tests/testthat/test-graph.dfs.R

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ test_that("DFS does not pad order", {
88
expect_equal(as.numeric(dfs(g, root = 2, unreachable = FALSE)$order), c(2, 1))
99

1010
local_igraph_options(return.vs.es = FALSE)
11-
expect_equal(as.numeric(bfs(g, root = 2, unreachable = FALSE)$order), c(2, 1))
11+
expect_equal(as.numeric(dfs(g, root = 2, unreachable = FALSE)$order), c(2, 1))
12+
expect_equal(as.numeric(dfs(g, root = 2, unreachable = FALSE, order.out = TRUE)$order.out), c(1, 2))
1213
})

0 commit comments

Comments
 (0)