author | Shawn O. Pearce <spearce@spearce.org> | |
Wed, 23 Aug 2006 05:33:47 +0000 (01:33 -0400) | ||
committer | Shawn O. Pearce <spearce@spearce.org> | |
Sun, 14 Jan 2007 07:15:05 +0000 (02:15 -0500) | ||
commit | afde8dd96dbb81688d7cb22330e4fffcfc7def21 | |
tree | 4ea2cde49b9b71f5a14a7e731d58c248b7ac475b | tree | snapshot |
parent | ace4a9d1ae5efd056c5e57cc76aacee3057a73f7 | commit | diff |
Fixed segfault in fast-import after growing a tree.
Growing a tree caused all subtrees to be deallocated and put back
into the free list yet those subtree's contents were still actively
in use. Consequently they were doled out again and got stomped
on elsewhere. Releasing a tree is now performed in two parts,
either releasing only the content array or releasing the content
array and recursively releasing the subtree(s).
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Growing a tree caused all subtrees to be deallocated and put back
into the free list yet those subtree's contents were still actively
in use. Consequently they were doled out again and got stomped
on elsewhere. Releasing a tree is now performed in two parts,
either releasing only the content array or releasing the content
array and recursively releasing the subtree(s).
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
fast-import.c | diff | blob | history |