diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2011-01-31 18:00:58 -0500 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2011-01-31 18:00:58 -0500 |
commit | 8b7c903e5cf5620deaab09ec39e978d62ddb45c3 (patch) | |
tree | b25755e5f3783e0124c0d3dd487280fa3aaf97f0 /indra/llxml | |
parent | 2bafe0dc8a2eb1d99516a4af96acc93c3541a1cd (diff) |
Fix a couple gotchas in LLSDArray, LLSDParam, llsd_equals().
Nested LLSDArray expressions, e.g.:
LLSD array_of_arrays(LLSDArray(LLSDArray(17)(34))
(LLSDArray("x")("y")));
would quietly produce bad results because the outermost LLSDArray was being
constructed with the compiler's implicit LLSDArray(const LLSDArray&) rather
than LLSDArray(const LLSD&) as the reader assumes. Fixed with an explicit copy
constructor to Do The Right Thing.
Generalized LLSDParam<float> specialization into a macro to resolve similar
conversion ambiguities for float, LLUUID, LLDate, LLURI and LLSD::Binary.
Added optional bits= argument to llsd_equals() to permit comparing embedded
Real values using is_approx_equal_fraction() rather than strictly bitwise.
Omitting bits= retains current bitwise-comparison behavior.
Diffstat (limited to 'indra/llxml')
0 files changed, 0 insertions, 0 deletions