diff options
author | Thiago de Arruda <tpadilha84@gmail.com> | 2014-07-08 11:03:18 -0300 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2014-07-17 11:37:41 -0300 |
commit | cf30837951120bb27563054ab9aadd4ccf6fadbf (patch) | |
tree | 5f2f454e5cbf5dcb3f8fbbebdb5ac8456893bcba /src/nvim/os/event.c | |
parent | f180f6fdeb58f2c24ac8154a70ee6d9f22d434ad (diff) | |
download | rneovim-cf30837951120bb27563054ab9aadd4ccf6fadbf.tar.gz rneovim-cf30837951120bb27563054ab9aadd4ccf6fadbf.tar.bz2 rneovim-cf30837951120bb27563054ab9aadd4ccf6fadbf.zip |
api/events/msgpack: Insert log statements to improve debugging
Also changed the default log level to INFO so developers won't end up with big
log files without asking explicitly(DLOG statements were placed in really "hot"
code)
Diffstat (limited to 'src/nvim/os/event.c')
-rw-r--r-- | src/nvim/os/event.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/nvim/os/event.c b/src/nvim/os/event.c index 0528339865..6367a60af7 100644 --- a/src/nvim/os/event.c +++ b/src/nvim/os/event.c @@ -94,16 +94,18 @@ bool event_poll(int32_t ms) run_mode = UV_RUN_NOWAIT; } - bool events_processed; + size_t processed_events; do { // Run one event loop iteration, blocking for events if run_mode is // UV_RUN_ONCE + DLOG("Entering event loop"); uv_run(uv_default_loop(), run_mode); - events_processed = event_process(false); + processed_events = event_process(false); + DLOG("Exited event loop, processed %u events", processed_events); } while ( // Continue running if ... - !events_processed && // we didn't process any immediate events + !processed_events && // we didn't process any immediate events !event_has_deferred() && // no events are waiting to be processed run_mode != UV_RUN_NOWAIT && // ms != 0 !timer_data.timed_out); // we didn't get a timeout @@ -122,7 +124,7 @@ bool event_poll(int32_t ms) event_process(false); } - return !timer_data.timed_out && (events_processed || event_has_deferred()); + return !timer_data.timed_out && (processed_events || event_has_deferred()); } bool event_has_deferred(void) @@ -137,13 +139,12 @@ void event_push(Event event, bool deferred) } // Runs the appropriate action for each queued event -bool event_process(bool deferred) +size_t event_process(bool deferred) { - bool processed_events = false; + size_t count = 0; Event event; while (kl_shift(Event, get_queue(deferred), &event) == 0) { - processed_events = true; switch (event.type) { case kEventSignal: signal_handle(event); @@ -157,9 +158,10 @@ bool event_process(bool deferred) default: abort(); } + count++; } - return processed_events; + return count; } // Set a flag in the `event_poll` loop for signaling of a timeout |