Re: [JGIT PATCH 2/5] Fix UnpackedObjectLoader.getBytes to return a copy
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Oct 9, 2008, 21:49 UTC
- Message-ID
- <20081009214926.GA8203@spearce.org>
- In-Reply-To
- <2c6b72b30810091446y22cb2e00te7a25676ee21ddac@mail.gmail.com>
Jonas Fonseca <jonas.fonseca@gmail.com> wrote:
Show 18 quoted lines
> On Wed, Oct 1, 2008 at 03:31, Shawn O. Pearce <spearce@spearce.org> wrote:
> > diff --git a/org.spearce.jgit/src/org/spearce/jgit/lib/ObjectLoader.java b/org.spearce.jgit/src/org/spearce/jgit/lib/ObjectLoader.java
> > index 5282491..87e861f 100644
> > --- a/org.spearce.jgit/src/org/spearce/jgit/lib/ObjectLoader.java
> > +++ b/org.spearce.jgit/src/org/spearce/jgit/lib/ObjectLoader.java
> > @@ -105,7 +105,12 @@ protected void setId(final ObjectId id) {
> > * @throws IOException
> > * the object cannot be read.
> > */
> > - public abstract byte[] getBytes() throws IOException;
> > + public final byte[] getBytes() throws IOException {
> > + final byte[] data = getCachedBytes();
> > + final byte[] copy = new byte[data.length];
> > + System.arraycopy(data, 0, copy, 0, data.length);
> > + return data;
> > + }
>
> If I understand correctly, shouldn't this return the copy variable?F&@!#*@#&@!#*@!@!&#@#@*@!
Yes. :-)
I think its already committed to master too. Can you send a patch along to fix, and point out how stupid I am?
-- Shawn.