diff options
Diffstat (limited to 'src/lib_ffi.c')
-rw-r--r-- | src/lib_ffi.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/lib_ffi.c b/src/lib_ffi.c index e7d31fe7..931164b7 100644 --- a/src/lib_ffi.c +++ b/src/lib_ffi.c | |||
@@ -60,7 +60,7 @@ static CTypeID ffi_checkctype(lua_State *L, CTState *cts, TValue *param) | |||
60 | if (!tviscdata(o)) goto err_argtype; | 60 | if (!tviscdata(o)) goto err_argtype; |
61 | if (param && param < L->top) lj_err_arg(L, 1, LJ_ERR_FFI_NUMPARAM); | 61 | if (param && param < L->top) lj_err_arg(L, 1, LJ_ERR_FFI_NUMPARAM); |
62 | cd = cdataV(o); | 62 | cd = cdataV(o); |
63 | return cd->typeid == CTID_CTYPEID ? *(CTypeID *)cdataptr(cd) : cd->typeid; | 63 | return cd->ctypeid == CTID_CTYPEID ? *(CTypeID *)cdataptr(cd) : cd->ctypeid; |
64 | } | 64 | } |
65 | } | 65 | } |
66 | 66 | ||
@@ -213,11 +213,11 @@ LJLIB_CF(ffi_meta___call) LJLIB_REC(cdata_call) | |||
213 | { | 213 | { |
214 | CTState *cts = ctype_cts(L); | 214 | CTState *cts = ctype_cts(L); |
215 | GCcdata *cd = ffi_checkcdata(L, 1); | 215 | GCcdata *cd = ffi_checkcdata(L, 1); |
216 | CTypeID id = cd->typeid; | 216 | CTypeID id = cd->ctypeid; |
217 | CType *ct; | 217 | CType *ct; |
218 | cTValue *tv; | 218 | cTValue *tv; |
219 | MMS mm = MM_call; | 219 | MMS mm = MM_call; |
220 | if (cd->typeid == CTID_CTYPEID) { | 220 | if (cd->ctypeid == CTID_CTYPEID) { |
221 | id = *(CTypeID *)cdataptr(cd); | 221 | id = *(CTypeID *)cdataptr(cd); |
222 | mm = MM_new; | 222 | mm = MM_new; |
223 | } else { | 223 | } else { |
@@ -276,7 +276,7 @@ LJLIB_CF(ffi_meta___tostring) | |||
276 | { | 276 | { |
277 | GCcdata *cd = ffi_checkcdata(L, 1); | 277 | GCcdata *cd = ffi_checkcdata(L, 1); |
278 | const char *msg = "cdata<%s>: %p"; | 278 | const char *msg = "cdata<%s>: %p"; |
279 | CTypeID id = cd->typeid; | 279 | CTypeID id = cd->ctypeid; |
280 | void *p = cdataptr(cd); | 280 | void *p = cdataptr(cd); |
281 | if (id == CTID_CTYPEID) { | 281 | if (id == CTID_CTYPEID) { |
282 | msg = "ctype<%s>"; | 282 | msg = "ctype<%s>"; |
@@ -340,7 +340,7 @@ LJLIB_CF(ffi_clib___index) LJLIB_REC(clib_index 1) | |||
340 | if (tviscdata(tv)) { | 340 | if (tviscdata(tv)) { |
341 | CTState *cts = ctype_cts(L); | 341 | CTState *cts = ctype_cts(L); |
342 | GCcdata *cd = cdataV(tv); | 342 | GCcdata *cd = cdataV(tv); |
343 | CType *s = ctype_get(cts, cd->typeid); | 343 | CType *s = ctype_get(cts, cd->ctypeid); |
344 | if (ctype_isextern(s->info)) { | 344 | if (ctype_isextern(s->info)) { |
345 | CTypeID sid = ctype_cid(s->info); | 345 | CTypeID sid = ctype_cid(s->info); |
346 | void *sp = *(void **)cdataptr(cd); | 346 | void *sp = *(void **)cdataptr(cd); |
@@ -362,7 +362,7 @@ LJLIB_CF(ffi_clib___newindex) LJLIB_REC(clib_index 0) | |||
362 | if (o < L->top && tviscdata(tv)) { | 362 | if (o < L->top && tviscdata(tv)) { |
363 | CTState *cts = ctype_cts(L); | 363 | CTState *cts = ctype_cts(L); |
364 | GCcdata *cd = cdataV(tv); | 364 | GCcdata *cd = cdataV(tv); |
365 | CType *d = ctype_get(cts, cd->typeid); | 365 | CType *d = ctype_get(cts, cd->ctypeid); |
366 | if (ctype_isextern(d->info)) { | 366 | if (ctype_isextern(d->info)) { |
367 | CTInfo qual = 0; | 367 | CTInfo qual = 0; |
368 | for (;;) { /* Skip attributes and collect qualifiers. */ | 368 | for (;;) { /* Skip attributes and collect qualifiers. */ |
@@ -398,7 +398,7 @@ static int ffi_callback_set(lua_State *L, GCfunc *fn) | |||
398 | { | 398 | { |
399 | GCcdata *cd = ffi_checkcdata(L, 1); | 399 | GCcdata *cd = ffi_checkcdata(L, 1); |
400 | CTState *cts = ctype_cts(L); | 400 | CTState *cts = ctype_cts(L); |
401 | CType *ct = ctype_raw(cts, cd->typeid); | 401 | CType *ct = ctype_raw(cts, cd->ctypeid); |
402 | if (ctype_isptr(ct->info) && (LJ_32 || ct->size == 8)) { | 402 | if (ctype_isptr(ct->info) && (LJ_32 || ct->size == 8)) { |
403 | MSize slot = lj_ccallback_ptr2slot(cts, *(void **)cdataptr(cd)); | 403 | MSize slot = lj_ccallback_ptr2slot(cts, *(void **)cdataptr(cd)); |
404 | if (slot < cts->cb.sizeid && cts->cb.cbid[slot] != 0) { | 404 | if (slot < cts->cb.sizeid && cts->cb.cbid[slot] != 0) { |
@@ -504,7 +504,7 @@ LJLIB_CF(ffi_cast) LJLIB_REC(ffi_new) | |||
504 | L->top = o+1; /* Make sure this is the last item on the stack. */ | 504 | L->top = o+1; /* Make sure this is the last item on the stack. */ |
505 | if (!(ctype_isnum(d->info) || ctype_isptr(d->info) || ctype_isenum(d->info))) | 505 | if (!(ctype_isnum(d->info) || ctype_isptr(d->info) || ctype_isenum(d->info))) |
506 | lj_err_arg(L, 1, LJ_ERR_FFI_INVTYPE); | 506 | lj_err_arg(L, 1, LJ_ERR_FFI_INVTYPE); |
507 | if (!(tviscdata(o) && cdataV(o)->typeid == id)) { | 507 | if (!(tviscdata(o) && cdataV(o)->ctypeid == id)) { |
508 | GCcdata *cd = lj_cdata_new(cts, id, d->size); | 508 | GCcdata *cd = lj_cdata_new(cts, id, d->size); |
509 | lj_cconv_ct_tv(cts, d, cdataptr(cd), o, CCF_CAST); | 509 | lj_cconv_ct_tv(cts, d, cdataptr(cd), o, CCF_CAST); |
510 | setcdataV(L, o, cd); | 510 | setcdataV(L, o, cd); |
@@ -532,8 +532,8 @@ LJLIB_CF(ffi_istype) LJLIB_REC(ffi_istype) | |||
532 | int b = 0; | 532 | int b = 0; |
533 | if (tviscdata(o)) { | 533 | if (tviscdata(o)) { |
534 | GCcdata *cd = cdataV(o); | 534 | GCcdata *cd = cdataV(o); |
535 | CTypeID id2 = cd->typeid == CTID_CTYPEID ? *(CTypeID *)cdataptr(cd) : | 535 | CTypeID id2 = cd->ctypeid == CTID_CTYPEID ? *(CTypeID *)cdataptr(cd) : |
536 | cd->typeid; | 536 | cd->ctypeid; |
537 | CType *ct1 = lj_ctype_rawref(cts, id1); | 537 | CType *ct1 = lj_ctype_rawref(cts, id1); |
538 | CType *ct2 = lj_ctype_rawref(cts, id2); | 538 | CType *ct2 = lj_ctype_rawref(cts, id2); |
539 | if (ct1 == ct2) { | 539 | if (ct1 == ct2) { |
@@ -735,7 +735,7 @@ LJLIB_CF(ffi_gc) | |||
735 | TValue *fin = lj_lib_checkany(L, 2); | 735 | TValue *fin = lj_lib_checkany(L, 2); |
736 | CTState *cts = ctype_cts(L); | 736 | CTState *cts = ctype_cts(L); |
737 | GCtab *t = cts->finalizer; | 737 | GCtab *t = cts->finalizer; |
738 | CType *ct = ctype_raw(cts, cd->typeid); | 738 | CType *ct = ctype_raw(cts, cd->ctypeid); |
739 | if (!(ctype_isptr(ct->info) || ctype_isstruct(ct->info) || | 739 | if (!(ctype_isptr(ct->info) || ctype_isstruct(ct->info) || |
740 | ctype_isrefarray(ct->info))) | 740 | ctype_isrefarray(ct->info))) |
741 | lj_err_arg(L, 1, LJ_ERR_FFI_INVTYPE); | 741 | lj_err_arg(L, 1, LJ_ERR_FFI_INVTYPE); |