Le 09/05/2014 08:43, Srivardhan Hebbar a écrit :
Checking for NULL before dereferencing the wl_event_source
pointer so as to avoid crash.
Signed-off-by: Srivardhan Hebbar <sri.heb...@samsung.com>
---
src/event-loop.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/event-loop.c b/src/event-loop.c
index 9790cde..b62d16e 100644
--- a/src/event-loop.c
+++ b/src/event-loop.c
@@ -312,7 +312,12 @@ wl_event_source_check(struct wl_event_source *source)
WL_EXPORT int
wl_event_source_remove(struct wl_event_source *source)
{
- struct wl_event_loop *loop = source->loop;
+ struct wl_event_loop *loop;
+
+ if (source == NULL)
+ return 0;
+
+ loop = source->loop;
/* We need to explicitly remove the fd, since closing the fd
* isn't enough in case we've dup'ed the fd. */
Hello Srivardhan,
do you have a case where this check is hit ? I may be wrong but having
no loop associated with a source event is not supposed to happen. So my
guess is that a caller of wl_event_source_remove has forgotten to
nullify the event source after the call.
Regards.
--
David FORT
website: http://www.hardening-consulting.com/
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel