Permalink
Browse files

Use interrupt_with_signal for FFI calls

This ensures that FFI calls that take longer can be interrupted when for
example an exception is raised into the thread. By changing this we make
sure a SIGVTARLM is sent in those cases so the exception can be handled
properly.

Fixes #2127
  • Loading branch information...
1 parent f43fe4a commit 47e70d11bc8e0f533c90fc4d837d6cee55174cad @dbussink dbussink committed Jan 23, 2013
Showing with 1 addition and 0 deletions.
  1. +1 −0 vm/builtin/nativefunction.cpp
@@ -1032,6 +1032,7 @@ namespace rubinius {
env->set_current_call_frame(call_frame);
state->set_call_frame(call_frame);
+ state->vm()->interrupt_with_signal();
state->gc_independent(gct);
switch(ffi_data_local->ret_info.type) {

0 comments on commit 47e70d1

Please sign in to comment.