diff options
author | Peng Wu <alexepico@gmail.com> | 2018-06-15 11:36:12 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2018-06-15 11:36:12 +0800 |
commit | 766a1322395e32286930a62b9f66033a0d8d637c (patch) | |
tree | 7de09b05eba63d1c700339df8c5262a243c98dff /src/PYPLuaConverterCandidates.cc | |
parent | 89e6d4c522217278ac24d5f4cfc38162a267c9a3 (diff) | |
download | ibus-libpinyin-766a1322395e32286930a62b9f66033a0d8d637c.tar.gz ibus-libpinyin-766a1322395e32286930a62b9f66033a0d8d637c.tar.xz ibus-libpinyin-766a1322395e32286930a62b9f66033a0d8d637c.zip |
fixes lua memory leak
Diffstat (limited to 'src/PYPLuaConverterCandidates.cc')
-rw-r--r-- | src/PYPLuaConverterCandidates.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/PYPLuaConverterCandidates.cc b/src/PYPLuaConverterCandidates.cc index e4608f4..a581c13 100644 --- a/src/PYPLuaConverterCandidates.cc +++ b/src/PYPLuaConverterCandidates.cc @@ -75,8 +75,9 @@ LuaConverterCandidates::processCandidates (std::vector<EnhancedCandidate> & cand ibus_engine_plugin_call (m_lua_plugin, converter, enhanced.m_display_string.c_str ()); - enhanced.m_display_string = - ibus_engine_plugin_get_first_result (m_lua_plugin); + gchar * string = ibus_engine_plugin_get_first_result (m_lua_plugin); + enhanced.m_display_string = string; + g_free (string); } return TRUE; @@ -100,8 +101,9 @@ LuaConverterCandidates::selectCandidate (EnhancedCandidate & enhanced) if (SELECT_CANDIDATE_MODIFY_IN_PLACE_AND_COMMIT == action) { ibus_engine_plugin_call (m_lua_plugin, converter, enhanced.m_display_string.c_str ()); - enhanced.m_display_string = - ibus_engine_plugin_get_first_result (m_lua_plugin); + gchar * string = ibus_engine_plugin_get_first_result (m_lua_plugin); + enhanced.m_display_string = string; + g_free (string); } return action; |