From 13bcb579fe1ead0a5dca3defdef73023463c51e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Remko=20Tron=C3=A7on?= Date: Sun, 18 May 2014 10:48:07 +0200 Subject: Fix spell check leaks and errors Change-Id: Ied0ac4abb21ef1720411fdbc61e7a687eee3afd1 diff --git a/SwifTools/HunspellChecker.cpp b/SwifTools/HunspellChecker.cpp index ecd352e..e9bc558 100644 --- a/SwifTools/HunspellChecker.cpp +++ b/SwifTools/HunspellChecker.cpp @@ -26,7 +26,7 @@ bool HunspellChecker::isCorrect(const std::string& word) { } void HunspellChecker::getSuggestions(const std::string& word, std::vector& list) { - char **suggestList; + char **suggestList = NULL; int words_returned; if (!word.empty()) { words_returned = speller_->suggest(&suggestList, word.c_str()); diff --git a/Swift/QtUI/QtTextEdit.cpp b/Swift/QtUI/QtTextEdit.cpp index cac8bb4..8551f3d 100644 --- a/Swift/QtUI/QtTextEdit.cpp +++ b/Swift/QtUI/QtTextEdit.cpp @@ -202,16 +202,12 @@ void QtTextEdit::addSuggestions(QMenu* menu, QContextMenuEvent* event) #ifdef HAVE_SPELLCHECKER void QtTextEdit::setUpSpellChecker() { - SpellCheckerFactory* checkerFactory = new SpellCheckerFactory(); delete checker_; + checker_ = NULL; if (settings_->getSetting(SettingConstants::SPELL_CHECKER)) { std::string dictPath = settings_->getSetting(SettingConstants::DICT_PATH); std::string dictFile = settings_->getSetting(SettingConstants::DICT_FILE); - checker_ = checkerFactory->createSpellChecker(dictPath + dictFile); - delete checkerFactory; - } - else { - checker_ = NULL; + checker_ = SpellCheckerFactory().createSpellChecker(dictPath + dictFile); } } #endif -- cgit v0.10.2-6-g49f6