devilhorns pushed a commit to branch master.
commit 0615dfe4ee1636b56086545605ea9dd6dadb95c2
Author: Chris Michael <[email protected]>
Date: Tue Jun 25 13:51:53 2013 +0100
Add missing safety checks for valid proxy objects before trying to
call functions on the object
Signed-off-by: Chris Michael <[email protected]>
---
src/modules/ecore_imf/wayland/text-client-protocol.h | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/src/modules/ecore_imf/wayland/text-client-protocol.h
b/src/modules/ecore_imf/wayland/text-client-protocol.h
index cfea94b..f9de29c 100644
--- a/src/modules/ecore_imf/wayland/text-client-protocol.h
+++ b/src/modules/ecore_imf/wayland/text-client-protocol.h
@@ -409,24 +409,28 @@ wl_text_input_add_listener(struct wl_text_input
*wl_text_input,
static inline void
wl_text_input_set_user_data(struct wl_text_input *wl_text_input, void
*user_data)
{
+ if (!wl_text_input) return;
wl_proxy_set_user_data((struct wl_proxy *) wl_text_input, user_data);
}
static inline void *
wl_text_input_get_user_data(struct wl_text_input *wl_text_input)
{
+ if (!wl_text_input) return NULL;
return wl_proxy_get_user_data((struct wl_proxy *) wl_text_input);
}
static inline void
wl_text_input_destroy(struct wl_text_input *wl_text_input)
{
+ if (!wl_text_input) return;
wl_proxy_destroy((struct wl_proxy *) wl_text_input);
}
static inline void
wl_text_input_activate(struct wl_text_input *wl_text_input, struct wl_seat
*seat, struct wl_surface *surface)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_ACTIVATE, seat, surface);
}
@@ -434,6 +438,7 @@ wl_text_input_activate(struct wl_text_input *wl_text_input,
struct wl_seat *seat
static inline void
wl_text_input_deactivate(struct wl_text_input *wl_text_input, struct wl_seat
*seat)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_DEACTIVATE, seat);
}
@@ -441,6 +446,7 @@ wl_text_input_deactivate(struct wl_text_input
*wl_text_input, struct wl_seat *se
static inline void
wl_text_input_show_input_panel(struct wl_text_input *wl_text_input)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_SHOW_INPUT_PANEL);
}
@@ -448,6 +454,7 @@ wl_text_input_show_input_panel(struct wl_text_input
*wl_text_input)
static inline void
wl_text_input_hide_input_panel(struct wl_text_input *wl_text_input)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_HIDE_INPUT_PANEL);
}
@@ -455,6 +462,7 @@ wl_text_input_hide_input_panel(struct wl_text_input
*wl_text_input)
static inline void
wl_text_input_reset(struct wl_text_input *wl_text_input)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_RESET);
}
@@ -462,6 +470,7 @@ wl_text_input_reset(struct wl_text_input *wl_text_input)
static inline void
wl_text_input_set_surrounding_text(struct wl_text_input *wl_text_input, const
char *text, uint32_t cursor, uint32_t anchor)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_SET_SURROUNDING_TEXT, text, cursor,
anchor);
}
@@ -469,6 +478,7 @@ wl_text_input_set_surrounding_text(struct wl_text_input
*wl_text_input, const ch
static inline void
wl_text_input_set_content_type(struct wl_text_input *wl_text_input, uint32_t
hint, uint32_t purpose)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_SET_CONTENT_TYPE, hint, purpose);
}
@@ -476,6 +486,7 @@ wl_text_input_set_content_type(struct wl_text_input
*wl_text_input, uint32_t hin
static inline void
wl_text_input_set_cursor_rectangle(struct wl_text_input *wl_text_input,
int32_t x, int32_t y, int32_t width, int32_t height)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_SET_CURSOR_RECTANGLE, x, y, width,
height);
}
@@ -483,6 +494,7 @@ wl_text_input_set_cursor_rectangle(struct wl_text_input
*wl_text_input, int32_t
static inline void
wl_text_input_set_preferred_language(struct wl_text_input *wl_text_input,
const char *language)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_SET_PREFERRED_LANGUAGE, language);
}
@@ -490,6 +502,7 @@ wl_text_input_set_preferred_language(struct wl_text_input
*wl_text_input, const
static inline void
wl_text_input_commit_state(struct wl_text_input *wl_text_input, uint32_t
serial)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_COMMIT_STATE, serial);
}
@@ -497,6 +510,7 @@ wl_text_input_commit_state(struct wl_text_input
*wl_text_input, uint32_t serial)
static inline void
wl_text_input_invoke_action(struct wl_text_input *wl_text_input, uint32_t
button, uint32_t index)
{
+ if (!wl_text_input) return;
wl_proxy_marshal((struct wl_proxy *) wl_text_input,
WL_TEXT_INPUT_INVOKE_ACTION, button, index);
}
@@ -506,18 +520,21 @@ wl_text_input_invoke_action(struct wl_text_input
*wl_text_input, uint32_t button
static inline void
wl_text_input_manager_set_user_data(struct wl_text_input_manager
*wl_text_input_manager, void *user_data)
{
+ if (!wl_text_input_manager) return;
wl_proxy_set_user_data((struct wl_proxy *) wl_text_input_manager,
user_data);
}
static inline void *
wl_text_input_manager_get_user_data(struct wl_text_input_manager
*wl_text_input_manager)
{
+ if (!wl_text_input_manager) return NULL;
return wl_proxy_get_user_data((struct wl_proxy *)
wl_text_input_manager);
}
static inline void
wl_text_input_manager_destroy(struct wl_text_input_manager
*wl_text_input_manager)
{
+ if (!wl_text_input_manager) return;
wl_proxy_destroy((struct wl_proxy *) wl_text_input_manager);
}
@@ -526,6 +543,8 @@ wl_text_input_manager_create_text_input(struct
wl_text_input_manager *wl_text_in
{
struct wl_proxy *id;
+ if (!wl_text_input_manager) return NULL;
+
id = wl_proxy_create((struct wl_proxy *) wl_text_input_manager,
&wl_text_input_interface);
if (!id)
--
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev