On Wednesday 29 April 2009 02:58:48 Daniel Cheng wrote:
> On Wed, Apr 29, 2009 at 9:21 AM, Matthew Toseland
> <[email protected]> wrote:
> > On Tuesday 21 April 2009 08:55:53 [email protected] wrote:
> >> Author: j16sdiz
> >> Date: 2009-04-21 07:55:52 +0000 (Tue, 21 Apr 2009)
> >> New Revision: 27137
> >>
> >> Modified:
> >>    trunk/freenet/src/freenet/support/io/PersistentBlobTempBucket.java
> >> Log:
> >> Fix inputStream count
> >
> > What's the difference? Apart from your version breaks on an OOM and the
> > previous version didn't?
> 
> 
> If you close it twice, the counter get decreased twice.

Doh! But why the inputStreams inc move?
> 
> >>
> >> Modified: 
trunk/freenet/src/freenet/support/io/PersistentBlobTempBucket.java
> >> ===================================================================
> >> --- trunk/freenet/src/freenet/support/io/PersistentBlobTempBucket.java
> > 2009-04-21 07:55:31 UTC (rev 27136)
> >> +++ trunk/freenet/src/freenet/support/io/PersistentBlobTempBucket.java
> > 2009-04-21 07:55:52 UTC (rev 27137)
> >> @@ -75,17 +75,15 @@
> >>       public InputStream getInputStream() throws IOException {
> >>               if(freed) throw new IOException("Already freed");
> >>               final FileChannel channel = factory.channel;
> >> +
> >> +             synchronized(PersistentBlobTempBucket.this) {
> >> +                     inputStreams++;
> >> +             }
> >> +
> >>               return new InputStream() {
> >> -
> >>                       private int offset;
> >>                       private boolean closed;
> >>
> >> -                     {
> >> -                             synchronized(PersistentBlobTempBucket.this) 
{
> >> -                                     inputStreams++;
> >> -                             }
> >> -                     }
> >> -
> >>                       @Override
> >>                       public int read() throws IOException {
> >>                               if (closed) throw new 
IOException("closed");
> >> @@ -130,6 +128,7 @@
> >>
> >>                       @Override
> >>                       public void close() {
> >> +                             if (closed) return;
> >>                               closed = true;
> >>
> >>                               synchronized(PersistentBlobTempBucket.this) 
{
> >>
> >> _______________________________________________
> >> cvs mailing list
> >> [email protected]
> >> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
> >>
> >>
> >
> >
> >
> > _______________________________________________
> > Devl mailing list
> > [email protected]
> > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
> >
> _______________________________________________
> Devl mailing list
> [email protected]
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
> 
> 


Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Devl mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to