ecore_imf/xim: Fix memory leak
authorJihoon Kim <jihoon48.kim@samsung.com>
Fri, 3 Mar 2017 01:12:28 +0000 (10:12 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Fri, 3 Mar 2017 01:12:30 +0000 (10:12 +0900)
64 bytes in 1 blocks are definitely lost in loss record 152 of 258
   at 0x4C2AB80: malloc (vg_replace_malloc.c:296)
   by 0xC786A77: ??? (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC78747B: _XimDecodeIMATTRIBUTE (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC77A7EF: ??? (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC767771: XGetIMValues (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0x113CFE09: ???
   by 0x113D08F7: ???
   by 0x83DD329: ecore_imf_context_client_window_set (ecore_imf_context.c:240)
   by 0x530779D: _edje_entry_real_part_init (edje_entry.c:2937)
   by 0x5311C20: _edje_object_file_set_internal (edje_load.c:1079)
   by 0x5328665: _edje_object_efl_file_mmap_set (edje_smart.c:438)
   by 0x775BD3A: efl_file_mmap_set (in /usr/local/lib/libefl.so.1.18.4)

src/modules/ecore_imf/xim/ecore_imf_xim.c

index 04c5dfd..5a10a7e 100644 (file)
@@ -1383,6 +1383,9 @@ _ecore_imf_xim_info_im_shutdown(Ecore_X_Display *display EINA_UNUSED,
 
    free(info->locale);
 
+   if (info->xim_styles)
+     XFree(info->xim_styles);
+
    if (info->im)
      XCloseIM(info->im);