]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
FFI: Fix stack-adjustment for __thiscall callbacks.
authorMike Pall <mike>
Wed, 7 Nov 2012 17:04:58 +0000 (18:04 +0100)
committerMike Pall <mike>
Wed, 7 Nov 2012 17:04:58 +0000 (18:04 +0100)
src/lj_ccallback.c

index e1d03fcf559df410dad6ee0ed4ccde1666c19fe7..0b5adb09d41b78d956ae7f3aa1e902b1ec7b9801 100644 (file)
@@ -481,12 +481,9 @@ static void callback_conv_args(CTState *cts, lua_State *L)
   }
   L->top = o;
 #if LJ_TARGET_X86
-  /* Store stack adjustment for returns from fastcall/stdcall callbacks. */
-  switch (ctype_cconv(ct->info)) {
-  case CTCC_FASTCALL: case CTCC_STDCALL:
+  /* Store stack adjustment for returns from non-cdecl callbacks. */
+  if (ctype_cconv(ct->info) != CTCC_CDECL)
     (L->base-2)->u32.hi |= (nsp << (16+2));
-    break;
-  }
 #endif
 }