diff --git a/ClientCore/ClientCore.cpp b/ClientCore/ClientCore.cpp index a843242..ce01ebb 100644 --- a/ClientCore/ClientCore.cpp +++ b/ClientCore/ClientCore.cpp @@ -72,7 +72,6 @@ void ClientCore::UseFrame(QSharedPointer frame) case FrameBufferType::FBT_CLI_ASK_DIRFILE: { DirFileInfoVec vec; InfoMsg info = infoUnpack(frame->data); - vec.root = info.msg; if (!localFile_.GetDirFile(info.msg, vec)) { qWarning() << QString(tr("get dir file failed use %1")).arg(info.msg); return; diff --git a/Gui/Control/FileControl.cpp b/Gui/Control/FileControl.cpp index e197f16..7ae64dc 100644 --- a/Gui/Control/FileControl.cpp +++ b/Gui/Control/FileControl.cpp @@ -172,13 +172,13 @@ void FileManager::evtUp() { QString path(curRoot_); QDir dir(path); - dir.cdUp(); + if (!dir.cdUp()) { + return; + } path = dir.path(); - if (path.isEmpty()) { return; } - auto r = fileHelper_->GetDirFile(path); if (r) { curRoot_ = path; diff --git a/Util/LocalFile.cpp b/Util/LocalFile.cpp index ba57a96..f18d73f 100644 --- a/Util/LocalFile.cpp +++ b/Util/LocalFile.cpp @@ -24,6 +24,7 @@ bool LocalFile::GetDirFile(const QString& dir) bool LocalFile::GetDirFile(const QString& dir, DirFileInfoVec& vec) { vec.vec.clear(); + vec.root = dir; QDir qdir(dir); if (!qdir.exists()) {