diff options
author | Mike Pall <mike> | 2011-11-15 16:43:43 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2011-11-15 16:43:43 +0100 |
commit | b1efcef745b474f49dd9b0af61f771ccbc678b3c (patch) | |
tree | ac23d41325967a97a7d0f9d27659445f48299ebe /src/lj_ccallback.c | |
parent | d4df8d7825709872c779a11f53f12a00503bb948 (diff) | |
download | luajit-b1efcef745b474f49dd9b0af61f771ccbc678b3c.tar.gz luajit-b1efcef745b474f49dd9b0af61f771ccbc678b3c.tar.bz2 luajit-b1efcef745b474f49dd9b0af61f771ccbc678b3c.zip |
FFI: Add missing GC barrier for callback registration.
Diffstat (limited to 'src/lj_ccallback.c')
-rw-r--r-- | src/lj_ccallback.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lj_ccallback.c b/src/lj_ccallback.c index 8aab7f36..597b3c11 100644 --- a/src/lj_ccallback.c +++ b/src/lj_ccallback.c | |||
@@ -453,6 +453,7 @@ void *lj_ccallback_new(CTState *cts, CType *ct, GCfunc *fn) | |||
453 | MSize slot = callback_slot_new(cts, ct); | 453 | MSize slot = callback_slot_new(cts, ct); |
454 | GCtab *t = cts->miscmap; | 454 | GCtab *t = cts->miscmap; |
455 | setfuncV(cts->L, lj_tab_setint(cts->L, t, (int32_t)slot), fn); | 455 | setfuncV(cts->L, lj_tab_setint(cts->L, t, (int32_t)slot), fn); |
456 | lj_gc_anybarriert(cts->L, t); | ||
456 | return callback_slot2ptr(cts, slot); | 457 | return callback_slot2ptr(cts, slot); |
457 | } | 458 | } |
458 | return NULL; /* Bad conversion. */ | 459 | return NULL; /* Bad conversion. */ |