Changeset 1252
- Timestamp:
- Apr 21, 2012, 5:01:10 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/array.h
r1244 r1252 43 43 inline Array<T1, T2, T3> const& operator+=(Element const &x) 44 44 { 45 Append(x.m1, x.m2, x.m3); 45 if (m_count >= m_reserved) 46 { 47 /* Protect ourselves against insertion of an element that is 48 * already in m_data. */ 49 Element tmp = x; 50 Reserve(m_count * 13 / 8 + 8); 51 m_data[m_count++] = tmp; 52 } 53 else 54 m_data[m_count++] = x; 46 55 return *this; 47 56 } … … 50 59 { 51 60 if (m_count >= m_reserved) 52 Reserve(m_count * 13 / 8 + 8); 53 m_data[m_count].m1 = m1; 54 m_data[m_count].m2 = m2; 55 m_data[m_count].m3 = m3; 61 { 62 T1 tmp1 = m1; T2 tmp2 = m2; T3 tmp3 = m3; 63 Reserve(m_count * 13 / 8 + 8); 64 m_data[m_count].m1 = tmp1; 65 m_data[m_count].m2 = tmp2; 66 m_data[m_count].m3 = tmp3; 67 } 68 else 69 { 70 m_data[m_count].m1 = m1; 71 m_data[m_count].m2 = m2; 72 m_data[m_count].m3 = m3; 73 } 56 74 ++m_count; 57 75 } … … 112 130 inline Array<T1, T2> const& operator+=(Element const &x) 113 131 { 114 Append(x.m1, x.m2); 132 if (m_count >= m_reserved) 133 { 134 /* Protect ourselves against insertion of an element that is 135 * already in m_data. */ 136 Element tmp = x; 137 Reserve(m_count * 13 / 8 + 8); 138 m_data[m_count++] = tmp; 139 } 140 else 141 m_data[m_count++] = x; 115 142 return *this; 116 143 } … … 119 146 { 120 147 if (m_count >= m_reserved) 121 Reserve(m_count * 13 / 8 + 8); 122 m_data[m_count].m1 = m1; 123 m_data[m_count].m2 = m2; 148 { 149 T1 tmp1 = m1; T2 tmp2 = m2; 150 Reserve(m_count * 13 / 8 + 8); 151 m_data[m_count].m1 = tmp1; 152 m_data[m_count].m2 = tmp2; 153 } 154 else 155 { 156 m_data[m_count].m1 = m1; 157 m_data[m_count].m2 = m2; 158 } 124 159 ++m_count; 125 160 } … … 179 214 { 180 215 if (m_count >= m_reserved) 181 Reserve(m_count * 13 / 8 + 8); 182 m_data[m_count++] = x; 216 { 217 T1 tmp = x; 218 Reserve(m_count * 13 / 8 + 8); 219 m_data[m_count++] = tmp; 220 } 221 else 222 { 223 m_data[m_count++] = x; 224 } 183 225 return *this; 184 226 } -
trunk/win32/lolcore.vcxproj
r1250 r1252 126 126 <ItemGroup> 127 127 <ClInclude Include="..\src\application\application.h" /> 128 <ClInclude Include="..\src\array.h" /> 128 129 <ClInclude Include="..\src\audio.h" /> 129 130 <ClInclude Include="..\src\bitfield.h" /> -
trunk/win32/lolcore.vcxproj.filters
r1250 r1252 362 362 <Filter>src\gpu</Filter> 363 363 </ClInclude> 364 <ClInclude Include="..\src\array.h"> 365 <Filter>src</Filter> 366 </ClInclude> 364 367 </ItemGroup> 365 368 </Project>
Note: See TracChangeset
for help on using the changeset viewer.