diff --git a/frame/controller/dockpluginscontroller.cpp b/frame/controller/dockpluginscontroller.cpp index 09f92902b..b469bf01f 100644 --- a/frame/controller/dockpluginscontroller.cpp +++ b/frame/controller/dockpluginscontroller.cpp @@ -45,6 +45,7 @@ void DockPluginsController::loadPlugins() PluginsItemInterface *interface = qobject_cast(pluginLoader->instance()); if (!interface) { + pluginLoader->unload(); pluginLoader->deleteLater(); continue; } diff --git a/frame/main.cpp b/frame/main.cpp index 90a03a106..9b8cfa4c9 100644 --- a/frame/main.cpp +++ b/frame/main.cpp @@ -2,6 +2,7 @@ #include "window/mainwindow.h" #include +#include #include @@ -36,6 +37,10 @@ int main(int argc, char *argv[]) app.setApplicationDisplayName("DDE Dock"); app.setApplicationVersion("2.0"); +#ifndef QT_DEBUG + QDir::setCurrent(QApplication::applicationDirPath()); +#endif + MainWindow mw; QDBusConnection::sessionBus().registerService("com.deepin.dde.dock"); QDBusConnection::sessionBus().registerObject("/com/deepin/dde/dock", "com.deepin.dde.dock", &mw);