diff options
-rw-r--r-- | backends/text-to-speech/linux/linux-text-to-speech.cpp | 2 | ||||
-rw-r--r-- | common/text-to-speech.cpp | 3 | ||||
-rw-r--r-- | common/text-to-speech.h | 1 |
3 files changed, 4 insertions, 2 deletions
diff --git a/backends/text-to-speech/linux/linux-text-to-speech.cpp b/backends/text-to-speech/linux/linux-text-to-speech.cpp index bbe6705f58..5df8f80e32 100644 --- a/backends/text-to-speech/linux/linux-text-to-speech.cpp +++ b/backends/text-to-speech/linux/linux-text-to-speech.cpp @@ -87,7 +87,7 @@ LinuxTextToSpeechManager::LinuxTextToSpeechManager() } LinuxTextToSpeechManager::~LinuxTextToSpeechManager() { - spd_close(_connection); + //spd_close(_connection); } void LinuxTextToSpeechManager::updateState(LinuxTextToSpeechManager::SpeechState state) { diff --git a/common/text-to-speech.cpp b/common/text-to-speech.cpp index d1b9539f93..1e2456d8a6 100644 --- a/common/text-to-speech.cpp +++ b/common/text-to-speech.cpp @@ -38,6 +38,9 @@ TextToSpeechManager::~TextToSpeechManager() { TTSState *tmp = _ttsState; while (tmp != nullptr) { tmp = _ttsState->_next; + for (TTSVoice *i = _ttsState->_availaibleVoices.begin(); i < _ttsState->_availaibleVoices.end(); i++) { + free(i->_data); + } delete _ttsState; _ttsState = tmp; } diff --git a/common/text-to-speech.h b/common/text-to-speech.h index 62cc5e878b..8d4b0a0f87 100644 --- a/common/text-to-speech.h +++ b/common/text-to-speech.h @@ -48,7 +48,6 @@ class TTSVoice { TTSVoice(Gender gender, void *data) : _gender(gender) , _data(data) {} - ~TTSVoice() { debug("%d", * (int *)_data); if (_data != nullptr) free(_data); } Gender getGender() { return _gender; }; void setGender(Gender gender) { _gender = gender; }; void setData(void *data) { _data = data; }; |