@@ -101,10 +101,7 @@ void W3DPropBuffer::cull(CameraClass * camera)
101
101
// =============================================================================
102
102
W3DPropBuffer::~W3DPropBuffer (void )
103
103
{
104
- Int i;
105
- for (i=0 ; i<MAX_TYPES; i++) {
106
- REF_PTR_RELEASE (m_propTypes[i].m_robj );
107
- }
104
+ clearAllProps ();
108
105
REF_PTR_RELEASE (m_light);
109
106
REF_PTR_RELEASE (m_propShroudMaterialPass);
110
107
}
@@ -119,7 +116,8 @@ W3DPropBuffer::W3DPropBuffer(void)
119
116
{
120
117
memset (this , sizeof (W3DPropBuffer), 0 );
121
118
m_initialized = false ;
122
- clearAllProps ();
119
+ m_numProps = 0 ;
120
+ m_numPropTypes = 0 ;
123
121
m_light = NEW_REF ( LightClass, (LightClass::DIRECTIONAL) );
124
122
m_propShroudMaterialPass = NEW_REF (W3DShroudMaterialPassClass,());
125
123
m_initialized = true ;
@@ -136,13 +134,16 @@ W3DPropBuffer::W3DPropBuffer(void)
136
134
// =============================================================================
137
135
void W3DPropBuffer::clearAllProps (void )
138
136
{
139
- m_numProps=0 ;
140
137
Int i;
141
- for (i=0 ; i<MAX_TYPES ; i++) {
138
+ for (i=0 ; i<m_numPropTypes ; i++) {
142
139
REF_PTR_RELEASE (m_propTypes[i].m_robj );
143
140
m_propTypes[i].m_robjName .clear ();
144
141
}
142
+ for (i=0 ; i<m_numProps; i++) {
143
+ REF_PTR_RELEASE (m_props[i].m_robj );
144
+ }
145
145
m_numPropTypes = 0 ;
146
+ m_numProps = 0 ;
146
147
}
147
148
148
149
// =============================================================================
0 commit comments