summaryrefslogtreecommitdiff
path: root/indra/llcommon/llinstancetracker.h
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2011-08-02 15:07:35 -0700
committerMerov Linden <merov@lindenlab.com>2011-08-02 15:07:35 -0700
commit0b81c19cbe809f041e628da334c305ea33fae2e9 (patch)
tree57a870cb47928bb996c33d2111a0f49c3f28b31f /indra/llcommon/llinstancetracker.h
parent8d081d34fc56fd1b742045dd120b6acbda0d027e (diff)
parent6d9158dcaddfe486d91a514c9df92c155f655397 (diff)
Pull from richard/viewer-experience
Diffstat (limited to 'indra/llcommon/llinstancetracker.h')
-rw-r--r--indra/llcommon/llinstancetracker.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/indra/llcommon/llinstancetracker.h b/indra/llcommon/llinstancetracker.h
index 47041f790f..b4891eba67 100644
--- a/indra/llcommon/llinstancetracker.h
+++ b/indra/llcommon/llinstancetracker.h
@@ -56,7 +56,9 @@ public:
class instance_iter : public boost::iterator_facade<instance_iter, T, boost::forward_traversal_tag>
{
public:
- instance_iter(typename InstanceMap::iterator& it)
+ typedef boost::iterator_facade<instance_iter, T, boost::forward_traversal_tag> super_t;
+
+ instance_iter(const typename InstanceMap::iterator& it)
: mIterator(it)
{
++sIterationNestDepth;
@@ -67,6 +69,7 @@ public:
--sIterationNestDepth;
}
+
private:
friend class boost::iterator_core_access;
@@ -87,17 +90,26 @@ public:
class key_iter : public boost::iterator_facade<key_iter, KEY, boost::forward_traversal_tag>
{
public:
+ typedef boost::iterator_facade<key_iter, KEY, boost::forward_traversal_tag> super_t;
+
key_iter(typename InstanceMap::iterator& it)
: mIterator(it)
{
++sIterationNestDepth;
}
+ key_iter(const key_iter& other)
+ : mIterator(other.mIterator)
+ {
+ ++sIterationNestDepth;
+ }
+
~key_iter()
{
--sIterationNestDepth;
}
+
private:
friend class boost::iterator_core_access;
@@ -198,7 +210,7 @@ public:
class instance_iter : public boost::iterator_facade<instance_iter, T, boost::forward_traversal_tag>
{
public:
- instance_iter(typename InstanceSet::iterator& it)
+ instance_iter(const typename InstanceSet::iterator& it)
: mIterator(it)
{
++sIterationNestDepth;