106 |
int regionRefCount = --regInfo.refCount; |
int regionRefCount = --regInfo.refCount; |
107 |
int sampleRefCount = --SampleRefCount[pRegion->pSample]; |
int sampleRefCount = --SampleRefCount[pRegion->pSample]; |
108 |
if (regionRefCount == 0) { |
if (regionRefCount == 0) { |
109 |
RegionInfo.erase(pRegion); |
S* pSample = pRegion->pSample; |
110 |
|
|
111 |
DeleteRegionIfNotUsed(pRegion, ®Info); |
DeleteRegionIfNotUsed(pRegion, ®Info); |
112 |
|
|
113 |
if (sampleRefCount == 0) { |
if (sampleRefCount == 0) { |
114 |
SampleRefCount.erase(pRegion->pSample); |
SampleRefCount.erase(pSample); |
115 |
DeleteSampleIfNotUsed(pRegion->pSample, ®Info); |
DeleteSampleIfNotUsed(pSample, ®Info); |
116 |
} |
} |
117 |
|
RegionInfo.erase(pRegion); |
118 |
} |
} |
119 |
RegionInfoMutex.Unlock(); |
RegionInfoMutex.Unlock(); |
120 |
} |
} |