Author: rgodfrey
Date: Wed Feb 13 06:01:26 2008
New Revision: 627416
URL: http://svn.apache.org/viewvc?rev=627416&view=rev
Log:
QPID-789 : FieldTable putDataInBuffer method not thread safe
Modified:
incubator/qpid/branches/M2.1/java/common/src/main/java/org/apache/qpid/framing/FieldTable.java
Modified:
incubator/qpid/branches/M2.1/java/common/src/main/java/org/apache/qpid/framing/FieldTable.java
URL:
http://svn.apache.org/viewvc/incubator/qpid/branches/M2.1/java/common/src/main/java/org/apache/qpid/framing/FieldTable.java?rev=627416&r1=627415&r2=627416&view=diff
==============================================================================
---
incubator/qpid/branches/M2.1/java/common/src/main/java/org/apache/qpid/framing/FieldTable.java
(original)
+++
incubator/qpid/branches/M2.1/java/common/src/main/java/org/apache/qpid/framing/FieldTable.java
Wed Feb 13 06:01:26 2008
@@ -898,13 +898,15 @@
if (_encodedForm != null)
{
- if (_encodedForm.position() != 0)
+ ByteBuffer encodedForm = _encodedForm.duplicate();
+
+ if (encodedForm.position() != 0)
{
- _encodedForm.flip();
+ encodedForm.flip();
}
// _encodedForm.limit((int)getEncodedSize());
- buffer.put(_encodedForm);
+ buffer.put(encodedForm);
}
else if (_properties != null)
{