[
https://issues.apache.org/jira/browse/QPID-6470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14394905#comment-14394905
]
ASF subversion and git services commented on QPID-6470:
-------------------------------------------------------
Commit 1671125 from [~aconway] in branch 'qpid/trunk'
[ https://svn.apache.org/r1671125 ]
QPID-6470: FieldValue::getFloatingPointValue() converts endian each time it is
called.
When calling getFloatingPointValue multiple times, the octets are
endian-converted each time.
Actually we need to make a copy first and then call convertIfRequired().
This fix is from a pull request by Pavel Pokutnev (see the JIRA).
commit 4ed0ce9c9b74b136c49735b19efb80489aa495a3
His original patch was correct, I made some additions:
- Added a unit test: qpid/cpp/src/tests/FieldValue.cpp
- Fixed some incorrect uses of "const" in nearby code.
- Replaced a for loop with std::copy, more readable and more optimizable.
There are still serious problems with float conversion shown up by the unit
tests,
the relevant tests are commented out till these issues are fixed.
> FieldValue::getFloatingPointValue() converts endian each time it is called
> --------------------------------------------------------------------------
>
> Key: QPID-6470
> URL: https://issues.apache.org/jira/browse/QPID-6470
> Project: Qpid
> Issue Type: Bug
> Components: C++ Broker, C++ Client, C++ Clustering
> Affects Versions: 0.32, 0.33
> Environment: Windows 7
> Reporter: Pavel Pokutnev
> Assignee: Alan Conway
> Priority: Critical
> Labels: easyfix, patch
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> When calling getFloatingPointValue multiple times, the octets are
> endian-converted each time.
> Actually we need to make a copy first and then call convertIfRequired().
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]