Merge pull request #8754 from Chocobo1/fix

Fix memory leak
This commit is contained in:
Mike Tzou 2018-04-19 11:42:01 +08:00 committed by GitHub
commit 7aae915a68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 8 deletions

View File

@ -63,14 +63,10 @@ namespace Http
const char HEADER_REQUEST_METHOD_POST[] = "POST";
const char CONTENT_TYPE_HTML[] = "text/html";
const char CONTENT_TYPE_JS[] = "application/javascript";
const char CONTENT_TYPE_JSON[] = "application/json";
const char CONTENT_TYPE_BMP[] = "image/bmp";
const char CONTENT_TYPE_GIF[] = "image/gif";
const char CONTENT_TYPE_JPEG[] = "image/jpeg";
const char CONTENT_TYPE_PNG[] = "image/png";
const char CONTENT_TYPE_TXT[] = "text/plain";
const char CONTENT_TYPE_SVG[] = "image/svg+xml";
const char CONTENT_TYPE_FORM_ENCODED[] = "application/x-www-form-urlencoded";
const char CONTENT_TYPE_FORM_DATA[] = "multipart/form-data";

View File

@ -29,6 +29,8 @@
#include "searchpluginmanager.h"
#include <memory>
#include <QDebug>
#include <QDir>
#include <QDomDocument>
@ -458,7 +460,7 @@ void SearchPluginManager::update()
if (!engineElem.isNull()) {
QString pluginName = engineElem.tagName();
PluginInfo *plugin = new PluginInfo;
std::unique_ptr<PluginInfo> plugin {new PluginInfo {}};
plugin->name = pluginName;
plugin->version = getPluginVersion(pluginPath(pluginName));
plugin->fullName = engineElem.elementsByTagName("name").at(0).toElement().text();
@ -473,15 +475,15 @@ void SearchPluginManager::update()
QStringList disabledEngines = Preferences::instance()->getSearchEngDisabled();
plugin->enabled = !disabledEngines.contains(pluginName);
updateIconPath(plugin);
updateIconPath(plugin.get());
if (!m_plugins.contains(pluginName)) {
m_plugins[pluginName] = plugin;
m_plugins[pluginName] = plugin.release();
emit pluginInstalled(pluginName);
}
else if (m_plugins[pluginName]->version != plugin->version) {
delete m_plugins.take(pluginName);
m_plugins[pluginName] = plugin;
m_plugins[pluginName] = plugin.release();
emit pluginUpdated(pluginName);
}
}