diff --git a/src/treeviewsidebarpage.cpp b/src/treeviewsidebarpage.cpp index 8c746a253f..da8b9bc29e 100644 --- a/src/treeviewsidebarpage.cpp +++ b/src/treeviewsidebarpage.cpp @@ -87,9 +87,17 @@ void TreeViewSidebarPage::setUrl(const KUrl& url) m_url = url; + kDebug() << "-------------- Treeview: url = " << url << endl; + // adjust the root of the tree to the base bookmark - KFilePlacesModel *placesModel = DolphinSettings::instance().placesModel(); - const KUrl baseUrl = placesModel->url(placesModel->closestItem(url)); + KFilePlacesModel* placesModel = DolphinSettings::instance().placesModel(); + KUrl baseUrl = placesModel->url(placesModel->closestItem(url)); + if (!baseUrl.isValid()) { + // it's possible that no closest item is available and hence an + // empty URL is returned + baseUrl = url; + } + if (m_dirLister->url() != baseUrl) { m_dirLister->stop(); m_dirLister->openUrl(baseUrl);