You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by se...@apache.org on 2009/03/19 03:00:16 UTC

svn commit: r755811 - /httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java

Author: sebb
Date: Thu Mar 19 02:00:15 2009
New Revision: 755811

URL: http://svn.apache.org/viewvc?rev=755811&view=rev
Log:
Make code thread-safe by using dirty as a volatile guard

Modified:
    httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java

Modified: httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java?rev=755811&r1=755810&r2=755811&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java (original)
+++ httpcomponents/httpclient/trunk/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntity.java Thu Mar 19 02:00:15 2009
@@ -39,6 +39,8 @@
 import java.util.List;
 import java.util.Random;
 
+import net.jcip.annotations.ThreadSafe;
+
 import org.apache.http.Header;
 import org.apache.http.HttpEntity;
 import org.apache.http.entity.mime.content.ContentBody;
@@ -54,6 +56,7 @@
  *
  * @since 4.0
  */
+@ThreadSafe
 public class MultipartEntity implements HttpEntity {
 
     /**
@@ -68,7 +71,7 @@
     private final Header contentType;
     
     private long length;
-    private boolean dirty;
+    private volatile boolean dirty; // used to decide whether to recalculate length
     
     public MultipartEntity(
             HttpMultipartMode mode,