On Friday 04 April 2008 07:12, nextgens at freenetproject.org wrote:
> Author: nextgens
> Date: 2008-04-04 06:12:05 +0000 (Fri, 04 Apr 2008)
> New Revision: 18976
> 
> Modified:
>    trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
>    trunk/freenet/src/freenet/client/async/SplitFileInserter.java
> Log:
> Some sync fixes
> 
> Modified: 
trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
> ===================================================================
> --- trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java       
2008-04-04 06:05:54 UTC (rev 18975)
> +++ trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java       
2008-04-04 06:12:05 UTC (rev 18976)
> @@ -52,7 +52,7 @@
>       final FetchContext fetchContext;
>       final long maxBlockLength;
>       /** Has the segment finished processing? Irreversible. */
> -     private boolean finished;
> +     private volatile boolean finished;
>       private boolean startedDecode;
>       /** Bucket to store the data retrieved, after it has been decoded */
>       private Bucket decodedData;
> @@ -244,8 +244,10 @@
>                               
> parentFetcher.segmentFinished(SplitFileFetcherSegment.this);
>               } catch (IOException e) {
>                       Logger.normal(this, "Caught bucket error?: "+e, e);
> -                     finished = true;
> -                     failureException = new 
> FetchException(FetchException.BUCKET_ERROR);
> +                     synchronized(this) {
> +                             finished = true;
> +                             failureException = new 
> FetchException(FetchException.BUCKET_ERROR);
> +                     }
>                       
> parentFetcher.segmentFinished(SplitFileFetcherSegment.this);
>                       return;
>               }
> 
> Modified: trunk/freenet/src/freenet/client/async/SplitFileInserter.java
> ===================================================================
> --- trunk/freenet/src/freenet/client/async/SplitFileInserter.java     
> 2008-04-04 
06:05:54 UTC (rev 18975)
> +++ trunk/freenet/src/freenet/client/async/SplitFileInserter.java     
> 2008-04-04 
06:12:05 UTC (rev 18976)
> @@ -22,7 +22,7 @@
>  
>  public class SplitFileInserter implements ClientPutState {
>  
> -     private static boolean logMINOR;
> +     private boolean logMINOR;

IMHO this should be static, making it per instance is a waste of memory.

>       final BaseClientPutter parent;
>       final InsertContext ctx;
>       final PutCompletionCallback cb;
> @@ -38,7 +38,7 @@
>       private boolean haveSentMetadata;
>       final ClientMetadata cm;
>       final boolean isMetadata;
> -     private boolean finished;
> +     private volatile boolean finished;
>       private boolean fetchable;
>       public final Object token;
>       final boolean insertAsArchiveManifest;
> 
> _______________________________________________
> cvs mailing list
> cvs at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
> 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/cvs/attachments/20080404/ef41a216/attachment.pgp>

Reply via email to