author | Jonathan Nieder <jrnieder@gmail.com> | |
Sun, 5 Dec 2010 09:32:53 +0000 (03:32 -0600) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Wed, 8 Dec 2010 00:04:02 +0000 (16:04 -0800) | ||
commit | 3c93983875af53b9f172d7f7a1022d0954cb5689 | |
tree | f7676ecf1f9ae1d680c2c79c16202065eed7e229 | tree | snapshot |
parent | 97a5e3453abf63bbf5926979fcd89efb4388e937 | commit | diff |
vcs-svn: fix intermittent repo_tree corruption
Pointers to directory entries do not remain valid after a call to
dent_insert.
Noticed in the course of importing a small Subversion repository
(~1000 revs); after setting up a dirent for a certain path as a
placeholder, by luck dent_insert would trigger a realloc that
shifted around addresses, resulting in an import with that file
replaced by a directory.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Pointers to directory entries do not remain valid after a call to
dent_insert.
Noticed in the course of importing a small Subversion repository
(~1000 revs); after setting up a dirent for a certain path as a
placeholder, by luck dent_insert would trigger a realloc that
shifted around addresses, resulting in an import with that file
replaced by a directory.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
vcs-svn/repo_tree.c | diff | blob | history |