int LS_VirtualDrive_FileWrite(LuaState* state) { LuaStack args(state); VirtualDrive* drive = VirtualDriveFromLua(state, args[1]); VirtualFileHandle* file = VirtualFileHandleHandleFromLua(state, args[2]); size_t len; const char* buffer = luaL_checklstring(*state, 3, &len); len = luaL_optlong(*state, 4, len); drive->FileWrite(*file, buffer, len); return 0; }