Russian Qt Forum

Qt => Базы данных => Тема начата: Nameless One от Апрель 13, 2009, 07:03



Название: QSqlTableModel и release
Отправлено: Nameless One от Апрель 13, 2009, 07:03
Доброго времени суток. Проблема в следующем:
Написанная програмулька работает sqlite-базой. Писалась с QT 4.3.1 под VS2005. При компилировании проги в режиме Debug и последующем ковырянии она работает как швейцарские часики. После компиляции в release начинаются чудеса, для меня не понятные  ???. В частности,
Код:
bool MainWindow::setBase()
{
QSqlDatabase db=QSqlDatabase::addDatabase("QSQLITE","connection");
db.setDatabaseName(m_basesFile);
if(db.open())
{
m_hypot = new QSqlTableModel(tableView,db);
tableView->setModel(m_hypot);
m_hypot->setTable(tr("hypot"));
return m_hypot->select();
}
return false;
}
эта функция может пройти, а может и не пройти.
Определил, что она спотыкается на строчке m_hypot->select();. Происходит такое примерно 4 раза из 5ти (т.е. иногда все-таки работает, как мне нужно). В винде прогу выбивает без сообщения кода ошибки ("обнаружена ошибка. Приложение будет закрыто. Давайте отчет отправим, a?" и все в таком духе).
Помогите разобраться, пожалуйста.


Название: Re: QSqlTableModel и release
Отправлено: pastor от Апрель 13, 2009, 10:21
Собери релиз с отладочной информацией и посмотри где валится


Название: Re: QSqlTableModel и release
Отправлено: Nameless One от Апрель 13, 2009, 19:42
гм... стоило откомпилировать релиз с добавлением отладочной информации, и как все разом перестало сыпаться... Где-то недалеко живет шаман с бубном...