From 855e9a803d9e10b8e2aa26117096246e8210790f Mon Sep 17 00:00:00 2001 From: Jihoon Kim Date: Mon, 18 Jan 2016 13:32:01 +0900 Subject: [PATCH] Fix memory issue detected by valgrind Change-Id: I928e57430b6775742438d7a5b1b937b442f01001 --- src/sdk/ise_lang_table.cpp | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/src/sdk/ise_lang_table.cpp b/src/sdk/ise_lang_table.cpp index a396ec9..135b7cb 100644 --- a/src/sdk/ise_lang_table.cpp +++ b/src/sdk/ise_lang_table.cpp @@ -56,14 +56,29 @@ class Ise_Lang { }; Ise_Lang::~Ise_Lang() { for (int i = 0; i < m_size; ++i) { - free(m_table[i].language); - free(m_table[i].language_name); - free(m_table[i].locale_string); - free(m_table[i].inputmode_QTY); - free(m_table[i].inputmode_QTY_name); - free(m_table[i].main_keyboard_name); - free(m_table[i].keyboard_ise_uuid); - free(m_table[i].country_code_URL); + if (m_table[i].language) + free(m_table[i].language); + + if (m_table[i].language_name) + free(m_table[i].language_name); + + if (m_table[i].locale_string) + free(m_table[i].locale_string); + + if (m_table[i].inputmode_QTY) + free(m_table[i].inputmode_QTY); + + if (m_table[i].inputmode_QTY_name) + free(m_table[i].inputmode_QTY_name); + + if (m_table[i].main_keyboard_name) + free(m_table[i].main_keyboard_name); + + if (m_table[i].keyboard_ise_uuid) + delete [] m_table[i].keyboard_ise_uuid; + + if (m_table[i].country_code_URL) + free(m_table[i].country_code_URL); } } static int -- 2.7.4