Просмотр исходного кода

FFI: Fix ffi.metatype() for non-raw types.

Reported by 999pingGG. #1005
Mike Pall 2 лет назад
Родитель
Сommit
4c35a42d9c
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      src/lib_ffi.c

+ 1 - 1
src/lib_ffi.c

@@ -749,7 +749,7 @@ LJLIB_CF(ffi_metatype)
   if (!(ctype_isstruct(ct->info) || ctype_iscomplex(ct->info) ||
 	ctype_isvector(ct->info)))
     lj_err_arg(L, 1, LJ_ERR_FFI_INVTYPE);
-  tv = lj_tab_setinth(L, t, -(int32_t)id);
+  tv = lj_tab_setinth(L, t, -(int32_t)ctype_typeid(cts, ct));
   if (!tvisnil(tv))
     lj_err_caller(L, LJ_ERR_PROTMT);
   settabV(L, tv, mt);