git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Check for circular references causing 'lost' nodes

From
Stephen R. van den Berg <srb@cuci.nl>
Date
Apr 3, 2008, 08:48 UTC
Message-ID
<20080425234556.C271E545D@aristoteles.cuci.nl>
---
 commit.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/commit.c b/commit.c
index 94d5b3d..7524d2b 100644
--- a/commit.c
+++ b/commit.c
@@ -426,6 +426,7 @@ void sort_in_topological_order(struct commit_list ** list, int lifo)
 	struct commit_list *next, *orig = *list;
 	struct commit_list *work, **insert;
 	struct commit_list **pptr;
+	int nelements = 0;
 
 	if (!orig)
 		return;
@@ -436,6 +437,7 @@ void sort_in_topological_order(struct commit_list ** list, int lifo)
 		struct commit *commit = next->item;
 		commit->object.flags |= TOPOSORT;
 		commit->indegree = 0;
+		nelements++;
 	}
 
 	/* update the indegree */
@@ -506,7 +508,11 @@ void sort_in_topological_order(struct commit_list ** list, int lifo)
 		commit->object.flags &= ~TOPOSORT;
 		*pptr = work_item;
 		pptr = &work_item->next;
+		nelements--;
 	}
+	if (nelements)
+		fprintf(stderr, "Circular references in %d suppressed nodes\n",
+		 nelements);
 }
 
 /* merge-base stuff */
-- 
1.5.5.1.83.ge77a4.dirty
Next: Stephen R. van den Berg
Message 1 of 2 in “Check for circular references causing 'lost' nodes”
  1. Check for circular references causing 'lost' nodesStephen R. van den Berg, Apr 3, 2008
  2. Stephen R. van den BergApr 26, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.