From 13bcb579fe1ead0a5dca3defdef73023463c51e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Remko=20Tron=C3=A7on?= <git@el-tramo.be>
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<std::string>& 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