From 93a3e331a3e266b17115824f8f79dd296962de21 Mon Sep 17 00:00:00 2001 From: Scott Prager Date: Fri, 3 Apr 2015 12:35:12 -0400 Subject: event: Only process if event_init has been run. Reported by @fourjay, a codepath that causes event_poll() to run before event_init() will trigger a segfault as the events list will not have been initialized. Exiting immediately from event_init() causes nvim to hang, so just exit before running the events. fixes #2339 --- src/nvim/os/event.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/os/event.c b/src/nvim/os/event.c index 9bc509bb16..dbb9d337cf 100644 --- a/src/nvim/os/event.c +++ b/src/nvim/os/event.c @@ -124,7 +124,11 @@ void event_poll(int ms) } recursive--; // Can re-enter uv_run now - process_events_from(immediate_events); + + // In case this is run before event_init, don't process any events. + if (immediate_events) { + process_events_from(immediate_events); + } } bool event_has_deferred(void) -- cgit