]> source.dussan.org Git - jgit.git/commit
Don't serialize internal hash collision chain link 64/83764/2
authorThomas Wolf <thomas.wolf@paranor.ch>
Mon, 24 Oct 2016 07:29:30 +0000 (09:29 +0200)
committerThomas Wolf <thomas.wolf@paranor.ch>
Sat, 29 Oct 2016 09:39:36 +0000 (11:39 +0200)
commitd0023c3c8f1efed0ff54de42541efed01224f424
tree46768f23f92f75ef3f9ff95e4decd49ff7e3f502
parent88f433be84e27468d9234b0305b97139d593c8a9
Don't serialize internal hash collision chain link

ObjectId is serializable, and so are its subtypes. Ensure that
serialization does not follow the hash collision chain internal to the
ObjectIdOwnerMap, otherwise completely unrelated objects may get
serialized when a RevObject is serialized.

Note that serializing a RevCommit or RevTag may serialize quite a few
objects due to the parent/object links they contain. A user has no real
control over how many objects will be written when a RevCommit is
serialized. C.f [1]. This change does not resolve that, but in any case
this internal hash collision chain link should not participate in
serialization.

[1] https://github.com/gitblit/gitblit/pull/1141

Change-Id: Ice331a9dc80a59ca360fcc04adaff8b5e750d847
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectIdOwnerMap.java