I think that's okay. I'm using the algorithm from Goodrich & Tamassia's Data Structures and Algorithms in Java pg. 377. In pseudocode:
Mark vertex v as marked.
for each outgoing edge (v, w) of v do
if vertex w has not been visited
then recursively call DFS(w).
Which makes sense to me since the objective is to locate all reachable vertices. Imagine the case where you had more than one edge connecting two vertices. You'd end up counting all the paths to a node but that isn't the goal, well at least not a transitive closure anyway.
"The dead do not recognize context" -- Kai, Lexx