0002-Filter-out-unused-instance-counters-in-debug.patch
| b/nel/include/nel/misc/debug.h | ||
|---|---|---|
| 675 | 675 |
sint32 _InstanceCounter; |
| 676 | 676 |
sint32 _DeltaCounter; |
| 677 | 677 |
const char *_ClassName; |
| 678 |
bool _Touched; |
|
| 678 | 679 | |
| 679 | 680 |
TInstanceCounterData(const char *className); |
| 680 | 681 | |
| ... | ... | |
| 819 | 820 |
className##InstanceCounter() \ |
| 820 | 821 |
{ \
|
| 821 | 822 |
_InstanceCounterData._InstanceCounter++; \ |
| 823 |
_InstanceCounterData._Touched = true; \ |
|
| 822 | 824 |
} \ |
| 823 | 825 |
className##InstanceCounter(const className##InstanceCounter &/* other */) \ |
| 824 | 826 |
{ \
|
| 825 | 827 |
_InstanceCounterData._InstanceCounter++; \ |
| 828 |
_InstanceCounterData._Touched = true; \ |
|
| 826 | 829 |
} \ |
| 827 | 830 |
\ |
| 828 | 831 |
~className##InstanceCounter()\ |
| b/nel/src/misc/debug.cpp | ||
|---|---|---|
| 1246 | 1246 |
TInstanceCounterData::TInstanceCounterData(const char *className) |
| 1247 | 1247 |
: _InstanceCounter(0), |
| 1248 | 1248 |
_DeltaCounter(0), |
| 1249 |
_ClassName(className) |
|
| 1249 |
_ClassName(className), |
|
| 1250 |
_Touched(false) |
|
| 1250 | 1251 |
{
|
| 1251 | 1252 |
CInstanceCounterLocalManager::getInstance().registerInstanceCounter(this); |
| 1252 | 1253 |
} |
| ... | ... | |
| 1285 | 1286 |
{
|
| 1286 | 1287 |
const TInstanceCounterData *icd = *first; |
| 1287 | 1288 | |
| 1289 |
if (!icd->_Touched) |
|
| 1290 |
break; |
|
| 1291 | ||
| 1288 | 1292 |
if( counters.find(icd->_ClassName) == counters.end()) |
| 1289 | 1293 |
{
|
| 1290 | 1294 |
// insert a new item |
| b/nel/tools/nel_unit_test/ut_misc_debug.h | ||
|---|---|---|
| 202 | 202 | |
| 203 | 203 |
} |
| 204 | 204 | |
| 205 |
// FIXME: This is brittle - the precise list of counters depends on how much of |
|
| 206 |
// NeL gets linked with the unit tests. The order is also mostly unpredictable |
|
| 207 |
// with Unix shared objects. |
|
| 208 |
#ifdef NL_OS_UNIX |
|
| 209 |
string ref = "Listing 6 Instance counters :\n" |
|
| 210 |
#else |
|
| 211 |
string ref = "Listing 5 Instance counters :\n" |
|
| 212 |
#endif // NL_OS_UNIX |
|
| 205 |
string ref = "Listing 3 Instance counters :\n" |
|
| 213 | 206 |
" Class 'CFoo1 ', \t 10 instances, \t 10 delta\n" |
| 214 | 207 |
" Class 'CFoo2 ', \t 20 instances, \t 20 delta\n" |
| 215 |
" Class 'CFoo3 ', \t 10 instances, \t 10 delta\n" |
|
| 216 |
" Class 'CSafeSingleton ', \t 0 instances, \t 0 delta\n" |
|
| 217 |
" Class 'CUnsafeSingleton ', \t 0 instances, \t 0 delta\n" |
|
| 218 |
#ifdef NL_OS_UNIX |
|
| 219 |
" Class 'CWordsDictionary ', \t 0 instances, \t 0 delta\n" |
|
| 220 |
#endif // NL_OS_UNIX |
|
| 221 |
""; |
|
| 208 |
" Class 'CFoo3 ', \t 10 instances, \t 10 delta\n"; |
|
| 222 | 209 | |
| 223 | 210 |
string ret = NLMISC::CInstanceCounterManager::getInstance().displayCounters(); |
| 224 | 211 | |
| 225 |
- |
|