You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
//|| ( m_nFlags & k_nFlag_Table ) // We actually do this in one place when we know it's OK. Not worth it right now to get this situation exempted from the checking.
255
-
) {
256
-
// We must not already hold any existing object locks (except perhaps this one)
257
-
for ( int i = 0 ; i < t.m_nHeldLocks ; ++i )
258
-
{
259
-
const LockDebugInfo *pOtherLock = t.m_arHeldLocks[ i ];
260
-
AssertMsg( pOtherLock == this || !( pOtherLock->m_nFlags & k_nObjectFlags ),
261
-
"Taking lock '%s' and then '%s', while not holding the global lock", pOtherLock->m_pszName, m_pszName );
262
-
}
263
-
}
247
+
// Taking multiple object locks? This is allowed under certain circumstances
//|| ( m_nFlags & k_nFlag_Table ) // We actually do this in one place when we know it's OK. Not worth it right now to get this situation exempted from the checking.
262
+
) {
263
+
// We must not already hold any existing object locks (except perhaps this one)
264
+
for ( int i = 0 ; i < t.m_nHeldLocks ; ++i )
265
+
{
266
+
const LockDebugInfo *pOtherLock = t.m_arHeldLocks[ i ];
267
+
AssertMsg( pOtherLock == this || !( pOtherLock->m_nFlags & k_nObjectFlags ),
268
+
"Taking lock '%s' and then '%s', while not holding the global lock", pOtherLock->m_pszName, m_pszName );
269
+
}
267
270
}
271
+
272
+
// Usage is OK if we didn't find any problems above
0 commit comments