forked from qt-creator/qt-creator
fakevim: fix crash in ex command mapping
Task-number: QTCREATORBUG-4084
This commit is contained in:
@@ -307,7 +307,7 @@ public slots:
|
||||
void defaultAction();
|
||||
|
||||
private:
|
||||
QList<QTreeWidgetItem *> m_citems;
|
||||
//QList<QTreeWidgetItem *> m_citems;
|
||||
FakeVimPluginPrivate *m_q;
|
||||
};
|
||||
|
||||
@@ -337,7 +337,7 @@ void FakeVimExCommandsPage::initialize()
|
||||
|
||||
QTreeWidgetItem *item = new QTreeWidgetItem;
|
||||
item->setData(0, CommandRole, int(c->id()));
|
||||
m_citems.append(item);
|
||||
//m_citems.append(item);
|
||||
|
||||
const QString name = uidm->stringForUniqueIdentifier(c->id());
|
||||
const int pos = name.indexOf(QLatin1Char('.'));
|
||||
@@ -431,7 +431,12 @@ void FakeVimExCommandsPage::removeTargetIdentifier()
|
||||
void FakeVimExCommandsPage::defaultAction()
|
||||
{
|
||||
UniqueIDManager *uidm = UniqueIDManager::instance();
|
||||
foreach (QTreeWidgetItem *item, m_citems) {
|
||||
int n = commandList()->topLevelItemCount();
|
||||
for (int i = 0; i != n; ++i) {
|
||||
QTreeWidgetItem *section = commandList()->topLevelItem(i);
|
||||
int m = section->childCount();
|
||||
for (int j = 0; j != m; ++j) {
|
||||
QTreeWidgetItem *item = section->child(j);
|
||||
const int id = item->data(0, CommandRole).toInt();
|
||||
const QString name = uidm->stringForUniqueIdentifier(id);
|
||||
QString regex;
|
||||
@@ -442,6 +447,7 @@ void FakeVimExCommandsPage::defaultAction()
|
||||
if (item == commandList()->currentItem())
|
||||
commandChanged(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user