From 58353a358cd48fd10b1b3213f8bf60bbf1313c29 Mon Sep 17 00:00:00 2001 From: liyigang Date: Thu, 22 Aug 2024 11:14:01 +0800 Subject: [PATCH] fix: dde-file-manager crash, search crash if window not exists, don't send sendStopSpinner event Log: dde-file-manager crash, search crash Bug: https://pms.uniontech.com/task-view-358757.html --- .../core/dfmplugin-titlebar/utils/crumbinterface.cpp | 4 +--- .../filemanager/dfmplugin-search/events/searcheventcaller.cpp | 4 +++- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/filemanager/core/dfmplugin-titlebar/utils/crumbinterface.cpp b/src/plugins/filemanager/core/dfmplugin-titlebar/utils/crumbinterface.cpp index 261900ba6e..9ae69cd227 100644 --- a/src/plugins/filemanager/core/dfmplugin-titlebar/utils/crumbinterface.cpp +++ b/src/plugins/filemanager/core/dfmplugin-titlebar/utils/crumbinterface.cpp @@ -159,9 +159,7 @@ void CrumbInterface::onUpdateChildren(QList children) QStringList list; for (const auto &child : children) { - auto info = InfoFactory::create(child); - if (info) - list.append(info->nameOf(NameInfoType::kFileName)); + list.append(child.fileName()); } emit completionFound(list); } diff --git a/src/plugins/filemanager/dfmplugin-search/events/searcheventcaller.cpp b/src/plugins/filemanager/dfmplugin-search/events/searcheventcaller.cpp index afae916ded..f17d557339 100644 --- a/src/plugins/filemanager/dfmplugin-search/events/searcheventcaller.cpp +++ b/src/plugins/filemanager/dfmplugin-search/events/searcheventcaller.cpp @@ -6,6 +6,7 @@ #include "utils/searchhelper.h" #include +#include #include @@ -34,7 +35,8 @@ void SearchEventCaller::sendStartSpinner(quint64 winId) void SearchEventCaller::sendStopSpinner(quint64 winId) { - dpfSlotChannel->push("dfmplugin_titlebar", "slot_Spinner_Stop", winId); + if (dfmbase::FileManagerWindowsManager::instance().findWindowById(winId)) + dpfSlotChannel->push("dfmplugin_titlebar", "slot_Spinner_Stop", winId); } }