diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2012-07-10 15:46:27 -0400 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2012-07-10 15:46:27 -0400 |
commit | b6ffedb03da628d809124da24b7f2c20252710a5 (patch) | |
tree | ae94d9bc845a09eb10fdf972455c9f9858ddecad /indra/newview/llxmlrpctransaction.cpp | |
parent | 90547ff411db177bf6424ca553449a81a808fc0f (diff) |
MAINT-1175: Reimplement LLTypeInfoLookup for better lookup failure.
The original LLTypeInfoLookup implementation was based on two assumptions:
small overall container size, and infrequent normal-case lookup failures.
Those assumptions led to binary-searching a sorted vector, with linear search
as a fallback to cover the problem case of two different type_info* values for
the same type. As documented in the Jira, this turned out to be a problem. The
container size was larger than expected, and failed lookups turned out to be
far more common than expected.
The new implementation is based on a hash map of std::type_info::name()
strings, which should perform equally well in the success and failure cases:
no special-case fallback logic.
Diffstat (limited to 'indra/newview/llxmlrpctransaction.cpp')
0 files changed, 0 insertions, 0 deletions