diff --git a/src/lib/appinfo.cpp b/src/lib/appinfo.cpp index 12162d6..87f0483 100644 --- a/src/lib/appinfo.cpp +++ b/src/lib/appinfo.cpp @@ -219,7 +219,7 @@ std::vector AppInfoManger::getAppList(std::string mimeType) } -bool AppInfoManger::getDefaultApp(std::string mimeType, std::string desktopId) +bool AppInfoManger::setDefaultApp(std::string mimeType, std::string desktopId) { GDesktopAppInfo* gDesktopAppInfo = g_desktop_app_info_new(desktopId.c_str()); @@ -229,7 +229,7 @@ bool AppInfoManger::getDefaultApp(std::string mimeType, std::string desktopId) GAppInfo* gAppInfo = G_APP_INFO(gDesktopAppInfo); - GError* err; + GError* err = nullptr; g_app_info_set_as_default_for_type(gAppInfo, mimeType.c_str(), &err); if (err != nullptr) { diff --git a/src/lib/appinfo.h b/src/lib/appinfo.h index d33a5c3..a4772d8 100644 --- a/src/lib/appinfo.h +++ b/src/lib/appinfo.h @@ -16,7 +16,7 @@ public: static std::shared_ptr loadByDesktopId(std::string desktopId); static std::string getDefaultApp(std::string mimeType, bool supportUri); static std::vector getAppList(std::string mimeType); - static bool getDefaultApp(std::string mimeType, std::string desktopId); + static bool setDefaultApp(std::string mimeType, std::string desktopId); static std::vector& getXdgDataDirs(); static std::vector& getXdgAppsDirs(); static std::vector> getAll(std::map> skipDirs); diff --git a/src/modules/mimeapp/mime_app.cpp b/src/modules/mimeapp/mime_app.cpp index ea8c3c8..4b47fcb 100644 --- a/src/modules/mimeapp/mime_app.cpp +++ b/src/modules/mimeapp/mime_app.cpp @@ -291,7 +291,7 @@ bool MimeApp::setDefaultApp(const std::string &mimeType, const std::string &des return true; } - return AppInfoManger::getDefaultApp(mimeType, desktopId); + return AppInfoManger::setDefaultApp(mimeType, desktopId); } void MimeApp::DeleteApp(QStringList mimeTypes, const QString &desktopId) @@ -415,7 +415,7 @@ void MimeApp::SetDefaultApp(const QStringList &mimeTypes, const QString &desktop if (mime.toStdString().compare(AppinfoCommon::AppMimeTerminal) == 0) { bSuccess = TerminalInfo::getInstanceTerminal().setDefaultTerminal(desktopId.toStdString()); } else { - bSuccess = AppInfoManger::getDefaultApp(mime.toStdString(), desktopId.toStdString()); + bSuccess = AppInfoManger::setDefaultApp(mime.toStdString(), desktopId.toStdString()); } if (!bSuccess) {