Название: selectedRows() - вызывает Heap Corruption что делать? Отправлено: CMorgan от Октябрь 12, 2011, 15:03 Добрый день.
Работаю с QT 4.7.4. VisualStudio Add-In 1.1.9 (Студия 2008,2010) Необходимо из QTableView получить индексы выделенных пользователем строк. Пишу слот: Код: void fileLoader::ClearStocUpdateTableLine() Heap Corruption вылезает и под 2008 и под 2010-й студией, но только в Дебажном варианте, в релизе все работает нормально. Индексы возвращает правильные (что выделяю на QTableView, то и возвращает), рушится именно при попытке освободить память QList. Чего я делаю не так?. Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: Пантер от Октябрь 12, 2011, 15:12 Тут ошибки не вижу. Скорее всего, она в другом месте, а тут просто проявляется.
Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: CMorgan от Октябрь 12, 2011, 17:22 Ради интереса собрал сейчас приложение из QT example addressbook (ничего в нем не меняя) - симптомы точно такие же.
При выборе строки приложение вываливается при дебажной сборке, в релизной все работает как надо. Т.е. конкретно проблемы с selectedRows :-[ Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: Пантер от Октябрь 12, 2011, 18:15 Попробуй продебажить "вглубь" и найти где точно падает.
Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: CMorgan от Октябрь 13, 2011, 11:12 В общем при любом действии связанном с удалением элемента из QModelIndexList index под дебагом(будь-то вызов деструктора, clear или просто стирание одного элемента) прога вываливается сюда:
qregion.cpp: Код: QRegion::~QRegion() И крашится. Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: Пантер от Октябрь 13, 2011, 11:22 QModelIndexList
QRegion Что-то не то. :) Походу, где-то бьешь память. Название: Re: selectedRows() - вызывает Heap Corruption что делать? Отправлено: CMorgan от Октябрь 13, 2011, 16:10 Решили траблу.
Пришлось скачивать qt-everywhere-opensource-src-4.7.4 и собирать ее под 2010 студией. И тогда все заработало как надо. Баг был вызван использованием qt-win-opensource-4.7.4-vs2008 в 2010ке. Хотя ничего беды не предвещало и до этого момента с QModelIndexList все работало нормально ;) |