summaryrefslogtreecommitdiff
path: root/src/isolate.rs
diff options
context:
space:
mode:
authorBert Belder <bertbelder@gmail.com>2018-10-08 11:04:33 +0200
committerBert Belder <bertbelder@gmail.com>2018-10-08 18:19:36 +0200
commit4f3250bc4341217dce0e7efd48b49c47beac77b3 (patch)
tree427f7cadde0820e94ed49088bc4d405e9cba073c /src/isolate.rs
parente742af10aa67dc90a68fcb60b8e70733fd753e68 (diff)
Remove deno_get_data()
Instead, pass the isolate data to the dispatch callback directly.
Diffstat (limited to 'src/isolate.rs')
-rw-r--r--src/isolate.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/isolate.rs b/src/isolate.rs
index 8f8e798fb..dc44b11e2 100644
--- a/src/isolate.rs
+++ b/src/isolate.rs
@@ -100,8 +100,8 @@ impl Isolate {
self as *mut _ as *mut c_void
}
- pub fn from_c<'a>(d: *const libdeno::isolate) -> &'a mut Isolate {
- let ptr = unsafe { libdeno::deno_get_data(d) } as *mut _;
+ pub fn from_void_ptr<'a>(ptr: *mut c_void) -> &'a mut Isolate {
+ let ptr = ptr as *mut _;
unsafe { &mut *ptr }
}
@@ -236,7 +236,7 @@ impl From<Buf> for libdeno::deno_buf {
// Dereferences the C pointer into the Rust Isolate object.
extern "C" fn pre_dispatch(
- d: *const libdeno::isolate,
+ user_data: *mut c_void,
req_id: i32,
control_buf: libdeno::deno_buf,
data_buf: libdeno::deno_buf,
@@ -256,7 +256,7 @@ extern "C" fn pre_dispatch(
)
};
- let isolate = Isolate::from_c(d);
+ let isolate = Isolate::from_void_ptr(user_data);
let dispatch = isolate.dispatch;
let (is_sync, op) = dispatch(isolate, control_slice, data_slice);