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

Re: [PATCH/WIP 3/7] fast-import: fix a data corruption in parse_ls

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Jul 28, 2011, 07:34 UTC
Message-ID
<20110728073434.GC4179@elie>
In-Reply-To
<1311828370-30477-4-git-send-email-divanorama@gmail.com>
Dmitry Ivankov wrote:
> store_tree sets versions[0] = versions[1] unconditionally. This is fine
> if it is run from the very root.
True.
> But if it's run for a intermediate
> node in parse_ls, node's parent versions[0] can become invalid as it
> references it's children versions[0].

A puzzle: when would parse_ls() call store_tree() on a subdirectory? The store_tree() call is preceded by

	tree_content_get(root, p, &leaf);

which makes a deep copy of "root" in leaf (which seems to be leaked --- oops).

Previous: Dmitry IvankovNext: Dmitry Ivankov
Message 6 of 13 in “was: long fast-import errors out "failed to apply delta"”
  1. 0/7 was: long fast-import errors out "failed to apply delta"Dmitry Ivankov, Jul 28, 2011
  2. 1/7 fast-import: extract object preparation functionDmitry Ivankov, Jul 28, 2011
  3. 2/7 fast-import: be saner with temporary treesDmitry Ivankov, Jul 28, 2011
  4. Jonathan NiederJul 28, 2011
  5. 3/7 fast-import: fix a data corruption in parse_lsDmitry Ivankov, Jul 28, 2011
  6. Jonathan NiederJul 28, 2011
  7. 4/7 fast-import: fix data corruption in store_treeDmitry Ivankov, Jul 28, 2011
  8. Jonathan NiederJul 28, 2011
  9. Dmitry IvankovJul 28, 2011
  10. 5/7 fast-import: extract tree_content reading functionDmitry Ivankov, Jul 28, 2011
  11. 6/7 fast-import: workaround data corruptionDmitry Ivankov, Jul 28, 2011
  12. Jonathan NiederJul 28, 2011
  13. 7/7 fast-import: fix data corruption in load_treeDmitry Ivankov, Jul 28, 2011

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.