QP is internally inconsistent in calling assertion macros
Real-Time Event Frameworks based on active objects & state machines
Brought to you by:
quantum-leaps
The QP/C/C++/nano sorurce code is internally inconsistent in calling assertion macros in that sometimes these macros are called from within a critical section and sometimes outside a critical section. This makes it difficult to corrently implement the assertion handler Q_onAssert(). In systems, where critical sections cannot nest (e.g., in the QP/C/C++ ports to Linux), a version of Q_onAssert() that also uses a critical section might deadlock.
The QP/C/C++/nano sorurce code should be made consistent in always calling the Q_onAssert() handler outside of a critical section.
--MMS
Anonymous
Fixed in QP 6.3.2.
--MMS