Details
-
Bug
-
Resolution: Out of scope
-
Not Evaluated
-
4.6.1
-
None
-
Microsoft Windows XP Version 5.1.2600
Microsoft Visual Studio 2008 Express Version 9.0.30729.1 SP1
Microsoft .NET Framework Version 3.5 SP1
Description
Qt Designer crashes on startup... Here is what I did:
I changed mkspecs\win32-msvc2008\mkspecs as follow:
QMAKE_CFLAGS_RELEASE = -O2 -MT
QMAKE_CFLAGS_DEBUG = -Zi -MTd
QMAKE_CFLAGS_LTCG =
Then here is my configure line:
configure -debug-and-release -no-style-windowsvista -stl -nomake demos -nomake examples
Then I simply built using "nmake".
trace.txt is the DrWatson release build trace.
trace_debug.txt is the vc++ debug build trace.
With a little bit of digging I found out that CrtIsValidHeapPointer() does an assertion error triggered by the destruction of the local QXmlStreamReader object from brushmanagerproxy.cpp inside void BrushManagerProxy::setBrushManager(QtBrushManager *manager) at line 269.
When this object gets out of its local scope, the destructor of QXmlStreamReaderPrivate tries to delete the decoder and this is where the assertion is triggered:
QXmlStreamReaderPrivate::~QXmlStreamReaderPrivate()
{
#ifndef QT_NO_TEXTCODEC
delete decoder; // <---- THIS FAILS
#endif
...
}
I have no real clue why this happens, possibly that the heap is overwritten somewhere before.