summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJi-Youn Park <jy0703.park@samsung.com>2015-09-24 16:02:03 +0830
committerJi-Youn Park <jy0703.park@samsung.com>2015-09-24 16:02:03 +0830
commitff6f6f198b9134e0e636fc1e30ea133ca7b360a2 (patch)
tree2c1c81bdc20bbe8050e01942b43fa9a0b1c23f8c
parent217faeebe80db30fe2b2790493505391eeb62f99 (diff)
downloadefl-ff6f6f198b9134e0e636fc1e30ea133ca7b360a2.tar.gz
ecore_x_keygrab: fix memory leak
-rw-r--r--src/lib/ecore_x/xlib/ecore_x_keygrab.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/ecore_x/xlib/ecore_x_keygrab.c b/src/lib/ecore_x/xlib/ecore_x_keygrab.c
index b0dbd29a81..4ed762d39b 100644
--- a/src/lib/ecore_x/xlib/ecore_x_keygrab.c
+++ b/src/lib/ecore_x/xlib/ecore_x_keygrab.c
@@ -478,7 +478,7 @@ _ecore_x_window_keygrab_set_internal(Ecore_X_Window win,
if (!ret)
{
WRN("Key(\"%s\") add failed", key);
- return ret;
+ goto error;
}
if(grab_mode == ECORE_X_WIN_KEYGRAB_EXCLUSIVE)
@@ -570,7 +570,8 @@ _ecore_x_window_keygrab_unset_internal(Ecore_X_Window win,
ret = _ecore_x_window_keytable_possible_global_exclusiveness_unset(keycode);
}
- return EINA_TRUE;
+ _keytable_free(&keytable);
+ return EINA_TRUE;
error:
_keytable_free(&keytable);
return EINA_FALSE;