equal
deleted
inserted
replaced
112 { |
112 { |
113 NS_ASSERT (!m_disposed); |
113 NS_ASSERT (!m_disposed); |
114 NS_ASSERT (!o->m_disposed); |
114 NS_ASSERT (!o->m_disposed); |
115 NS_ASSERT (CheckLoose ()); |
115 NS_ASSERT (CheckLoose ()); |
116 NS_ASSERT (o->CheckLoose ()); |
116 NS_ASSERT (o->CheckLoose ()); |
|
117 |
|
118 if (DoGetObject (o->m_tid)) |
|
119 { |
|
120 NS_FATAL_ERROR ("Object::AggregateObject(): " |
|
121 "Multiple aggregation of objects of type " << o->m_tid.GetName ()); |
|
122 } |
|
123 |
117 Object *other = PeekPointer (o); |
124 Object *other = PeekPointer (o); |
118 Object *next = m_next; |
125 Object *next = m_next; |
119 m_next = other->m_next; |
126 m_next = other->m_next; |
120 other->m_next = next; |
127 other->m_next = next; |
121 NS_ASSERT (CheckLoose ()); |
128 NS_ASSERT (CheckLoose ()); |