diff --git a/src/gui/itemmodels/qstandarditemmodel.cpp b/src/gui/itemmodels/qstandarditemmodel.cpp index 7b8d8ae2b7..5c04510af1 100644 --- a/src/gui/itemmodels/qstandarditemmodel.cpp +++ b/src/gui/itemmodels/qstandarditemmodel.cpp @@ -1805,11 +1805,12 @@ QStandardItem *QStandardItem::takeChild(int row, int column) QList QStandardItem::takeRow(int row) { Q_D(QStandardItem); + QList items; if ((row < 0) || (row >= rowCount())) - return QList(); + return items; if (d->model) d->model->d_func()->rowsAboutToBeRemoved(this, row, row); - QList items; + int index = d->childIndex(row, 0); // Will return -1 if there are no columns if (index != -1) { int col_count = d->columnCount(); @@ -1838,11 +1839,11 @@ QList QStandardItem::takeRow(int row) QList QStandardItem::takeColumn(int column) { Q_D(QStandardItem); + QList items; if ((column < 0) || (column >= columnCount())) - return QList(); + return items; if (d->model) d->model->d_func()->columnsAboutToBeRemoved(this, column, column); - QList items; const int rowCount = d->rowCount(); items.reserve(rowCount);