Details
-
Bug
-
Resolution: Cannot Reproduce
-
P1: Critical
-
4.5.2
-
None
-
WinCE6 x86 Qt 4.5.2
Description
Following Code causes a Stackoverflow on WinCe but works well on WinXP:
class MainWnd : public QWidget { int m_Max; int m_Value; int m_TimerId; QProgressBar* m_pProgressBar; public: MainWnd() :m_pProgressBar(NULL) ,m_Max( 10) ,m_Value( 0) { m_pProgressBar = new QProgressBar( this); m_pProgressBar->setRange( 0, m_Max-1); m_TimerId = startTimer( 100); m_pProgressBar->setFixedWidth( this->width()); } protected: virtual void timerEvent ( QTimerEvent * event ){ if(event->timerId() == m_TimerId){ if( m_Value < m_Max){ ++m_Value; m_pProgressBar->setValue( m_Value); }else{ close(); } } QObject::timerEvent( event); } }; int main(int argc, char *argv[]) { QApplication app(argc, argv); MainWnd mWnd; mWnd.show(); app.exec(); }