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

[PATCH 1/7] fast-export: Omit tags that tag trees

From
newren@gmail.com <newren@gmail.com>
Date
Jun 20, 2009, 04:36 UTC
Message-ID
<1245472623-28103-2-git-send-email-newren@gmail.com>
In-Reply-To
<1245472623-28103-1-git-send-email-newren@gmail.com>
From: Elijah Newren <newren@gmail.com>

Commit c0582c53bcf4e83bba70e1ad23abbad31f96ebc8 introduced logic to just omit tags that point to tree objects. However, a case was missed resulting in a tag being output which pointed at "mark :0", which would cause fast-import to crash.

Signed-off-by: Elijah Newren <newren@gmail.com>
---
 builtin-fast-export.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/builtin-fast-export.c b/builtin-fast-export.c
index 6cef810..891e2d4 100644
--- a/builtin-fast-export.c
+++ b/builtin-fast-export.c
@@ -407,9 +407,15 @@ static void handle_tags_and_duplicates(struct string_list *extra_refs)
 	for (i = extra_refs->nr - 1; i >= 0; i--) {
 		const char *name = extra_refs->items[i].string;
 		struct object *object = extra_refs->items[i].util;
+		struct tag *tag;
 		switch (object->type) {
 		case OBJ_TAG:
-			handle_tag(name, (struct tag *)object);
+			tag = (struct tag *)object;
+			if (tag->tagged->type == OBJ_TREE) {
+				/* Ignore this tag altogether */
+				return;
+			}
+			handle_tag(name, tag);
 			break;
 		case OBJ_COMMIT:
 			/* create refs pointing to already seen commits */
-- 
1.6.3.2.323.gfb84f
Previous: newren@gmail.comNext: Jeff King
Message 2 of 14 in “A few fast-export fixups”
  1. newren@gmail.comJun 20, 2009
  2. 1/7 fast-export: Omit tags that tag treesnewren@gmail.com, Jun 20, 2009
  3. Jeff KingJun 20, 2009
  4. Elijah NewrenJun 20, 2009
  5. Jeff KingJun 20, 2009
  6. 2/7 Modify fast-export testcase to check that we correctly omit tags of treesnewren@gmail.com, Jun 20, 2009
  7. Stephen BoydJun 21, 2009
  8. Johannes SixtJun 21, 2009
  9. Elijah NewrenJun 22, 2009
  10. 3/7 fast-export: Make sure we show actual ref names instead of "(null)"newren@gmail.com, Jun 20, 2009
  11. 4/7 fast-export: Do parent rewriting to avoid dropping relevant commitsnewren@gmail.com, Jun 20, 2009
  12. 5/7 fast-export: Add a --tag-of-filtered-object option for newly dangling tagsnewren@gmail.com, Jun 20, 2009
  13. 6/7 Add new fast-export testcasesnewren@gmail.com, Jun 20, 2009
  14. 7/7 fast-export: Document the fact that git-rev-list arguments are acceptednewren@gmail.com, Jun 20, 2009

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.