summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems/qdeclarativepathview.cpp
diff options
context:
space:
mode:
authorMartin Jones <martin.jones@nokia.com>2011-05-30 05:26:06 (GMT)
committerMartin Jones <martin.jones@nokia.com>2011-05-30 05:26:06 (GMT)
commitb9d5cb9334e7d9da71af169802a01f8d344151a7 (patch)
tree5babb1fd2633d5da0121720dcac0a0ec8fedd8ac /src/declarative/graphicsitems/qdeclarativepathview.cpp
parentf75fda0365a4e4bf1f26dedc40d96d37a2599174 (diff)
downloadQt-b9d5cb9334e7d9da71af169802a01f8d344151a7.zip
Qt-b9d5cb9334e7d9da71af169802a01f8d344151a7.tar.gz
Qt-b9d5cb9334e7d9da71af169802a01f8d344151a7.tar.bz2
ListView segmentation fault when setting highlight to null
Setting view highlight to null due to focus change caused a crash since graphicsview accessed the highlight item after it had been deleted. Remove highlight item from scene and deleteLater(), as is done for delegates. Change-Id: I5bfd59095aca90d3adca805bc4f61c92c192ee1b Task-number: QTBUG-19509 Reviewed-by: Bea Lam
Diffstat (limited to 'src/declarative/graphicsitems/qdeclarativepathview.cpp')
-rw-r--r--src/declarative/graphicsitems/qdeclarativepathview.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp
index 79e52cd..94f128d 100644
--- a/src/declarative/graphicsitems/qdeclarativepathview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp
@@ -203,7 +203,9 @@ void QDeclarativePathViewPrivate::createHighlight()
bool changed = false;
if (highlightItem) {
- delete highlightItem;
+ if (highlightItem->scene())
+ highlightItem->scene()->removeItem(highlightItem);
+ highlightItem->deleteLater();
highlightItem = 0;
changed = true;
}