Цитата(LE0N @ 2.4.2009, 23:19)
Внутрь того, где возникла ошибка посмотреть слабо ? Наверняка ведь assert ы выставленны. Или нам нужно, как и тебе, на кофейной гуще гадать? )
ЗЫ. Вот не понятно, почему все сидят на древних версиях
Я так понял - потому, что они коммерческие. НО...Троли когда продают, не обеспечивают поддержкой обнавлениями????
За обновление надо платить! Не так дорого, но и недешево!
В стране кризис, в фирме - тоже!
Вы сможете помочь исправить код библиотеки?
qglobal.cpp
#if defined(Q_CC_MSVC) && defined(QT_DEBUG) && defined(_DEBUG) && defined(_CRT_ERROR)
// get the current report mode
int reportMode = _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_WNDW);
_CrtSetReportMode(_CRT_ERROR, reportMode);
int ret = _CrtDbgReport(_CRT_ERROR, __FILE__, __LINE__, QT_VERSION_STR, buf);
if (ret == 0 && reportMode & _CRTDBG_MODE_WNDW)
return; // ignore
else if (ret == 1)
_CrtDbgBreak();
#endif
void qFatal(const char *msg, ...)
{
char buf[QT_BUFFER_LENGTH];
buf[QT_BUFFER_LENGTH - 1] = '\0';
va_list ap;
va_start(ap, msg); // use variable arg list
if (msg)
qvsnprintf(buf, QT_BUFFER_LENGTH - 1, msg, ap);
va_end(ap);
qt_message_output(QtFatalMsg, buf);
}
void qt_assert(const char *assertion, const char *file, int line)
{
qFatal("ASSERT: \"%s\" in file %s, line %d", assertion, file, line);
}
qlayoutengine_p.h
int effectiveSpacer(int uniformSpacer) const {
Q_ASSERT(uniformSpacer >= 0 || spacing >= 0);
return (uniformSpacer >= 0) ? uniformSpacer : spacing;
}
Ну если Вы готовы помочь, то вот код. Что дальше? Разбирать баги библиотеки, согласитесь, что этим заниматься - не самое благодарное занятие?