Details
-
Bug
-
Resolution: Done
-
P2: Important
-
None
-
6.3.1
-
None
-
Windows 11, Qt 6.3.1 MSVC 2019
Description
When capturing Continuously using RHI Render Capture with debug build,
STL assertion often occurs and crashes.
In my environment MSVC2019, this Assertion occurs in the _Compat function of std::vector::iterator.
class _Vector_const_iterator { ... _CONSTEXPR20 void _Compat(const _Vector_const_iterator& _Right) const noexcept { // test for compatible iterator pair #if _ITERATOR_DEBUG_LEVEL == 0 (void) _Right; #else // ^^^ _ITERATOR_DEBUG_LEVEL == 0 ^^^ // vvv _ITERATOR_DEBUG_LEVEL != 0 vvv _STL_VERIFY(this->_Getcont() == _Right._Getcont(), "vector iterators incompatible"); // !!! Assertion is Here !!! #endif // _ITERATOR_DEBUG_LEVEL == 0 }
In the release build, _ITERATOR_DEBUG_LEVEL is 0.
Iterator is not verified and no crashes.
Reproduction procedure:
- Build and run several times the attached crash_rendercapture.zip
The application crashes with an Assertion in a few seconds. (It may not crash.)