lsteamclient: Reimplement callback_message_utow() in manual code using table.

CW-Bug-Id: #23550
This commit is contained in:
Paul Gofman 2024-03-12 15:26:47 -06:00
parent 7e98577a74
commit bd8d7e374e
3 changed files with 26 additions and 269 deletions

View file

@ -1661,45 +1661,6 @@ with open('unixlib_generated.cpp', 'w') as file:
out(u'\n')
abis['u32'].write_converter('w32_', path_conv_fields)
out(u'void callback_message_utow( const u_CallbackMsg_t *u_msg, w_CallbackMsg_t *w_msg )\n')
out(u'{\n')
out(u' int len;\n')
out(u'\n')
out(u'#define MAKE_CASE(id, wlen) ((uint64_t)(id) << 48) | ((uint64_t)(wlen) << 24)\n')
out(u' switch (MAKE_CASE(u_msg->m_iCallback, u_msg->m_cubParam))\n')
out(u' {\n')
out(u'#ifdef __i386__\n')
values = set()
for cbid, sdkver, abis in sorted(callbacks, key=lambda x: x[0]):
name, value = abis["w32"].name, (cbid, abis["u32"].size)
if name in all_versions[sdkver]: name = all_versions[sdkver][name]
if value not in values:
out(f' case MAKE_CASE({cbid}, {abis["u32"].size}): len = {abis["w32"].size}; break; /* {name} */\n')
else:
out(f' /* Conflict: case MAKE_CASE({cbid}, {abis["u32"].size}): len = {abis["w32"].size}; break; */ /* {name} */\n')
values.add(value)
out(u'#endif\n')
out(u'#ifdef __x86_64__\n')
values = set()
for cbid, sdkver, abis in sorted(callbacks, key=lambda x: x[0]):
name, value = abis["w64"].name, (cbid, abis["u64"].size)
if name in all_versions[sdkver]: name = all_versions[sdkver][name]
if value not in values:
out(f' case MAKE_CASE({cbid}, {abis["u64"].size}): len = {abis["w64"].size}; break; /* {name} */\n')
else:
out(f' /* Conflict: case MAKE_CASE({cbid}, {abis["u64"].size}): len = {abis["w64"].size}; break; */ /* {name} */\n')
values.add(value)
out(u'#endif\n')
out(u' default: len = u_msg->m_cubParam; break;\n')
out(u' }\n')
out(u'#undef MAKE_CASE\n')
out(u'\n')
out(u' w_msg->m_hSteamUser = u_msg->m_hSteamUser;\n')
out(u' w_msg->m_iCallback = u_msg->m_iCallback;\n')
out(u' w_msg->m_cubParam = len;\n')
out(u'}\n')
out(u'\n')
out(u'#ifdef __i386__\n')
out(u'const struct callback_def callback_data[] =\n{\n');
values = set()

View file

@ -735,3 +735,29 @@ void convert_callback_utow(int id, void *u_callback, int u_callback_len, void *w
if (best->conv_w_from_u) best->conv_w_from_u( w_callback, u_callback );
else memcpy( w_callback, u_callback, u_callback_len );
}
void callback_message_utow( const u_CallbackMsg_t *u_msg, w_CallbackMsg_t *w_msg )
{
const struct callback_def *c, *end;
int len = u_msg->m_cubParam;
if ((c = find_first_callback_def_by_id( u_msg->m_iCallback )))
{
end = callback_data + callback_data_size;
while (c != end && c->id == u_msg->m_iCallback)
{
if (c->u_callback_len == u_msg->m_cubParam)
{
len = c->w_callback_len;
break;
}
++c;
}
if (c == end || c->id != u_msg->m_iCallback)
WARN( "Unix len %d not found for callback %d.\n", u_msg->m_cubParam, u_msg->m_iCallback );
}
w_msg->m_hSteamUser = u_msg->m_hSteamUser;
w_msg->m_iCallback = u_msg->m_iCallback;
w_msg->m_cubParam = len;
}

View file

@ -20076,236 +20076,6 @@ u32_SubmitPlayerResultResultCallback_t::operator w32_SubmitPlayerResultResultCal
}
#endif
void callback_message_utow( const u_CallbackMsg_t *u_msg, w_CallbackMsg_t *w_msg )
{
int len;
#define MAKE_CASE(id, wlen) ((uint64_t)(id) << 48) | ((uint64_t)(wlen) << 24)
switch (MAKE_CASE(u_msg->m_iCallback, u_msg->m_cubParam))
{
#ifdef __i386__
case MAKE_CASE(152, 16): len = 24; break; /* MicroTxnAuthorizationResponse_t_123 */
/* Conflict: case MAKE_CASE(152, 16): len = 24; break; */ /* MicroTxnAuthorizationResponse_t_109 */
case MAKE_CASE(209, 32): len = 40; break; /* GSReputation_t_123 */
/* Conflict: case MAKE_CASE(209, 32): len = 40; break; */ /* GSReputation_t_108 */
case MAKE_CASE(513, 12): len = 16; break; /* LobbyCreated_t_123 */
/* Conflict: case MAKE_CASE(513, 12): len = 16; break; */ /* LobbyCreated_t_099u */
case MAKE_CASE(1023, 36): len = 40; break; /* FileDetailsResult_t */
case MAKE_CASE(1106, 28): len = 32; break; /* LeaderboardScoreUploaded_t_123 */
/* Conflict: case MAKE_CASE(1106, 28): len = 32; break; */ /* LeaderboardScoreUploaded_t_104 */
case MAKE_CASE(1111, 12): len = 16; break; /* LeaderboardUGCSet_t_123 */
/* Conflict: case MAKE_CASE(1111, 12): len = 16; break; */ /* LeaderboardUGCSet_t_111x */
case MAKE_CASE(1112, 20): len = 24; break; /* PS3TrophiesInstalled_t_123 */
/* Conflict: case MAKE_CASE(1112, 20): len = 24; break; */ /* PS3TrophiesInstalled_t_112x */
case MAKE_CASE(1221, 704): len = 712; break; /* SteamNetConnectionStatusChangedCallback_t_153a */
/* Conflict: case MAKE_CASE(1221, 704): len = 712; break; */ /* SteamNetConnectionStatusChangedCallback_t_144 */
case MAKE_CASE(1221, 576): len = 584; break; /* SteamNetConnectionStatusChangedCallback_t_151 */
case MAKE_CASE(1303, 280): len = 288; break; /* RemoteStorageAppSyncProgress_t_123 */
/* Conflict: case MAKE_CASE(1303, 280): len = 288; break; */ /* RemoteStorageAppSyncProgress_t_111x */
case MAKE_CASE(1307, 272): len = 280; break; /* RemoteStorageFileShareResult_t_128x */
case MAKE_CASE(1307, 12): len = 16; break; /* RemoteStorageFileShareResult_t_123 */
/* Conflict: case MAKE_CASE(1307, 12): len = 16; break; */ /* RemoteStorageFileShareResult_t_111x */
case MAKE_CASE(1308, 32): len = 40; break; /* RemoteStorageDownloadUGCResult_t_111x */
case MAKE_CASE(1309, 16): len = 24; break; /* RemoteStoragePublishFileResult_t_125 */
case MAKE_CASE(1309, 12): len = 16; break; /* RemoteStoragePublishFileResult_t_123 */
/* Conflict: case MAKE_CASE(1309, 12): len = 16; break; */ /* RemoteStoragePublishFileResult_t_116x */
case MAKE_CASE(1310, 1732): len = 1744; break; /* RemoteStorageGetPublishedFileDetailsResult_t_116x */
case MAKE_CASE(1311, 12): len = 16; break; /* RemoteStorageDeletePublishedFileResult_t_123 */
/* Conflict: case MAKE_CASE(1311, 12): len = 16; break; */ /* RemoteStorageDeletePublishedFileResult_t_116x */
case MAKE_CASE(1312, 412): len = 416; break; /* RemoteStorageEnumerateUserPublishedFilesResult_t_123 */
/* Conflict: case MAKE_CASE(1312, 412): len = 416; break; */ /* RemoteStorageEnumerateUserPublishedFilesResult_t_116x */
case MAKE_CASE(1313, 12): len = 16; break; /* RemoteStorageSubscribePublishedFileResult_t_123 */
case MAKE_CASE(1313, 4): len = 4; break; /* RemoteStorageSubscribePublishedFileResult_t_116x */
case MAKE_CASE(1314, 612): len = 616; break; /* RemoteStorageEnumerateUserSubscribedFilesResult_t_123 */
/* Conflict: case MAKE_CASE(1314, 612): len = 616; break; */ /* RemoteStorageEnumerateUserSubscribedFilesResult_t_116x */
case MAKE_CASE(1315, 12): len = 16; break; /* RemoteStorageUnsubscribePublishedFileResult_t_123 */
case MAKE_CASE(1315, 4): len = 4; break; /* RemoteStorageUnsubscribePublishedFileResult_t_116x */
case MAKE_CASE(1316, 16): len = 24; break; /* RemoteStorageUpdatePublishedFileResult_t_125 */
case MAKE_CASE(1316, 12): len = 16; break; /* RemoteStorageUpdatePublishedFileResult_t_123 */
/* Conflict: case MAKE_CASE(1316, 12): len = 16; break; */ /* RemoteStorageUpdatePublishedFileResult_t_116x */
case MAKE_CASE(1317, 288): len = 296; break; /* RemoteStorageDownloadUGCResult_t_123 */
/* Conflict: case MAKE_CASE(1317, 288): len = 296; break; */ /* RemoteStorageDownloadUGCResult_t_116x */
case MAKE_CASE(1318, 9748): len = 9760; break; /* RemoteStorageGetPublishedFileDetailsResult_t_126 */
case MAKE_CASE(1318, 9744): len = 9752; break; /* RemoteStorageGetPublishedFileDetailsResult_t_123 */
/* Conflict: case MAKE_CASE(1318, 9744): len = 9752; break; */ /* RemoteStorageGetPublishedFileDetailsResult_t_119x */
case MAKE_CASE(1318, 9740): len = 9752; break; /* RemoteStorageGetPublishedFileDetailsResult_t_119 */
case MAKE_CASE(1318, 9484): len = 9496; break; /* RemoteStorageGetPublishedFileDetailsResult_t_118 */
case MAKE_CASE(1319, 620): len = 624; break; /* RemoteStorageEnumerateWorkshopFilesResult_t_125 */
case MAKE_CASE(1319, 612): len = 616; break; /* RemoteStorageEnumerateWorkshopFilesResult_t_123 */
/* Conflict: case MAKE_CASE(1319, 612): len = 616; break; */ /* RemoteStorageEnumerateWorkshopFilesResult_t_119 */
case MAKE_CASE(1320, 28): len = 32; break; /* RemoteStorageGetPublishedItemVoteDetailsResult_t_123 */
/* Conflict: case MAKE_CASE(1320, 28): len = 32; break; */ /* RemoteStorageGetPublishedItemVoteDetailsResult_t_119 */
case MAKE_CASE(1324, 12): len = 16; break; /* RemoteStorageUpdateUserPublishedItemVoteResult_t_123 */
/* Conflict: case MAKE_CASE(1324, 12): len = 16; break; */ /* RemoteStorageUpdateUserPublishedItemVoteResult_t_119 */
case MAKE_CASE(1325, 16): len = 24; break; /* RemoteStorageUserVoteDetails_t_123 */
/* Conflict: case MAKE_CASE(1325, 16): len = 24; break; */ /* RemoteStorageUserVoteDetails_t_119 */
case MAKE_CASE(1326, 412): len = 416; break; /* RemoteStorageEnumerateUserSharedWorkshopFilesResult_t_123 */
/* Conflict: case MAKE_CASE(1326, 412): len = 416; break; */ /* RemoteStorageEnumerateUserSharedWorkshopFilesResult_t_119 */
case MAKE_CASE(1327, 16): len = 24; break; /* RemoteStorageSetUserPublishedFileActionResult_t_123 */
/* Conflict: case MAKE_CASE(1327, 16): len = 24; break; */ /* RemoteStorageSetUserPublishedFileActionResult_t_119 */
case MAKE_CASE(1330, 20): len = 24; break; /* RemoteStoragePublishedFileUpdated_t */
case MAKE_CASE(2101, 24): len = 32; break; /* HTTPRequestCompleted_t_132x */
case MAKE_CASE(2101, 20): len = 24; break; /* HTTPRequestCompleted_t_123 */
/* Conflict: case MAKE_CASE(2101, 20): len = 24; break; */ /* HTTPRequestCompleted_t_115 */
case MAKE_CASE(2102, 12): len = 16; break; /* HTTPRequestHeadersReceived_t_123 */
/* Conflict: case MAKE_CASE(2102, 12): len = 16; break; */ /* HTTPRequestHeadersReceived_t_121x */
case MAKE_CASE(2103, 20): len = 24; break; /* HTTPRequestDataReceived_t_123 */
/* Conflict: case MAKE_CASE(2103, 20): len = 24; break; */ /* HTTPRequestDataReceived_t_121x */
case MAKE_CASE(2803, 32): len = 40; break; /* SteamInputConfigurationLoaded_t */
case MAKE_CASE(2804, 24): len = 32; break; /* SteamInputGamepadSlotChange_t */
case MAKE_CASE(3402, 9768): len = 9784; break; /* SteamUGCRequestUGCDetailsResult_t_128x */
case MAKE_CASE(3402, 9764): len = 9776; break; /* SteamUGCRequestUGCDetailsResult_t_129 */
case MAKE_CASE(3402, 9760): len = 9768; break; /* SteamUGCRequestUGCDetailsResult_t_126 */
case MAKE_CASE(3403, 16): len = 24; break; /* CreateItemResult_t */
case MAKE_CASE(3405, 12): len = 16; break; /* ItemInstalled_t */
case MAKE_CASE(3406, 16): len = 24; break; /* DownloadItemResult_t */
case MAKE_CASE(3412, 20): len = 24; break; /* AddUGCDependencyResult_t */
case MAKE_CASE(3413, 20): len = 24; break; /* RemoveUGCDependencyResult_t */
case MAKE_CASE(3414, 16): len = 24; break; /* AddAppDependencyResult_t */
case MAKE_CASE(3415, 16): len = 24; break; /* RemoveAppDependencyResult_t */
case MAKE_CASE(3416, 148): len = 152; break; /* GetAppDependenciesResult_t */
case MAKE_CASE(3417, 12): len = 16; break; /* DeleteItemResult_t */
case MAKE_CASE(4502, 48): len = 48; break; /* HTML_NeedsPaint_t */
case MAKE_CASE(4503, 20): len = 20; break; /* HTML_StartRequest_t */
case MAKE_CASE(4505, 24): len = 24; break; /* HTML_URLChanged_t */
case MAKE_CASE(4506, 12): len = 12; break; /* HTML_FinishedRequest_t */
case MAKE_CASE(4507, 8): len = 8; break; /* HTML_OpenLinkInNewTab_t */
case MAKE_CASE(4508, 8): len = 8; break; /* HTML_ChangedTitle_t */
case MAKE_CASE(4513, 20): len = 20; break; /* HTML_LinkAtPosition_t */
case MAKE_CASE(4514, 8): len = 8; break; /* HTML_JSAlert_t */
case MAKE_CASE(4515, 8): len = 8; break; /* HTML_JSConfirm_t */
case MAKE_CASE(4516, 12): len = 12; break; /* HTML_FileOpenDialog_t */
case MAKE_CASE(4517, 16): len = 16; break; /* HTML_ComboNeedsPaint_t */
case MAKE_CASE(4521, 28): len = 28; break; /* HTML_NewWindow_t_132x */
case MAKE_CASE(4521, 24): len = 24; break; /* HTML_NewWindow_t_130x */
case MAKE_CASE(4523, 8): len = 8; break; /* HTML_StatusText_t */
case MAKE_CASE(4524, 8): len = 8; break; /* HTML_ShowToolTip_t */
case MAKE_CASE(4525, 8): len = 8; break; /* HTML_UpdateToolTip_t */
case MAKE_CASE(4704, 20): len = 24; break; /* SteamInventoryStartPurchaseResult_t */
case MAKE_CASE(5211, 12): len = 16; break; /* RequestPlayersForGameProgressCallback_t */
case MAKE_CASE(5212, 56): len = 64; break; /* RequestPlayersForGameResultCallback_t */
case MAKE_CASE(5213, 20): len = 24; break; /* RequestPlayersForGameFinalResultCallback_t */
case MAKE_CASE(5214, 20): len = 24; break; /* SubmitPlayerResultResultCallback_t */
case MAKE_CASE(5215, 12): len = 16; break; /* EndGameResultCallback_t */
case MAKE_CASE(5301, 276): len = 280; break; /* JoinPartyCallback_t */
case MAKE_CASE(5302, 12): len = 16; break; /* CreateBeaconCallback_t */
#endif
#ifdef __x86_64__
case MAKE_CASE(152, 16): len = 24; break; /* MicroTxnAuthorizationResponse_t_123 */
case MAKE_CASE(152, 24): len = 24; break; /* MicroTxnAuthorizationResponse_t_109 */
case MAKE_CASE(209, 32): len = 40; break; /* GSReputation_t_123 */
case MAKE_CASE(209, 40): len = 40; break; /* GSReputation_t_108 */
case MAKE_CASE(513, 12): len = 16; break; /* LobbyCreated_t_123 */
case MAKE_CASE(513, 16): len = 16; break; /* LobbyCreated_t_099u */
case MAKE_CASE(1023, 36): len = 40; break; /* FileDetailsResult_t */
case MAKE_CASE(1106, 28): len = 32; break; /* LeaderboardScoreUploaded_t_123 */
case MAKE_CASE(1106, 32): len = 32; break; /* LeaderboardScoreUploaded_t_104 */
case MAKE_CASE(1111, 12): len = 16; break; /* LeaderboardUGCSet_t_123 */
case MAKE_CASE(1111, 16): len = 16; break; /* LeaderboardUGCSet_t_111x */
case MAKE_CASE(1112, 20): len = 24; break; /* PS3TrophiesInstalled_t_123 */
case MAKE_CASE(1112, 24): len = 24; break; /* PS3TrophiesInstalled_t_112x */
case MAKE_CASE(1221, 704): len = 712; break; /* SteamNetConnectionStatusChangedCallback_t_153a */
/* Conflict: case MAKE_CASE(1221, 704): len = 712; break; */ /* SteamNetConnectionStatusChangedCallback_t_144 */
case MAKE_CASE(1221, 576): len = 584; break; /* SteamNetConnectionStatusChangedCallback_t_151 */
case MAKE_CASE(1303, 280): len = 288; break; /* RemoteStorageAppSyncProgress_t_123 */
case MAKE_CASE(1303, 288): len = 288; break; /* RemoteStorageAppSyncProgress_t_111x */
case MAKE_CASE(1307, 272): len = 280; break; /* RemoteStorageFileShareResult_t_128x */
case MAKE_CASE(1307, 12): len = 16; break; /* RemoteStorageFileShareResult_t_123 */
case MAKE_CASE(1307, 16): len = 16; break; /* RemoteStorageFileShareResult_t_111x */
case MAKE_CASE(1308, 40): len = 40; break; /* RemoteStorageDownloadUGCResult_t_111x */
case MAKE_CASE(1309, 16): len = 24; break; /* RemoteStoragePublishFileResult_t_125 */
case MAKE_CASE(1309, 12): len = 16; break; /* RemoteStoragePublishFileResult_t_123 */
/* Conflict: case MAKE_CASE(1309, 16): len = 16; break; */ /* RemoteStoragePublishFileResult_t_116x */
case MAKE_CASE(1310, 1744): len = 1744; break; /* RemoteStorageGetPublishedFileDetailsResult_t_116x */
case MAKE_CASE(1311, 12): len = 16; break; /* RemoteStorageDeletePublishedFileResult_t_123 */
case MAKE_CASE(1311, 16): len = 16; break; /* RemoteStorageDeletePublishedFileResult_t_116x */
case MAKE_CASE(1312, 412): len = 416; break; /* RemoteStorageEnumerateUserPublishedFilesResult_t_123 */
case MAKE_CASE(1312, 416): len = 416; break; /* RemoteStorageEnumerateUserPublishedFilesResult_t_116x */
case MAKE_CASE(1313, 12): len = 16; break; /* RemoteStorageSubscribePublishedFileResult_t_123 */
case MAKE_CASE(1313, 4): len = 4; break; /* RemoteStorageSubscribePublishedFileResult_t_116x */
case MAKE_CASE(1314, 612): len = 616; break; /* RemoteStorageEnumerateUserSubscribedFilesResult_t_123 */
case MAKE_CASE(1314, 616): len = 616; break; /* RemoteStorageEnumerateUserSubscribedFilesResult_t_116x */
case MAKE_CASE(1315, 12): len = 16; break; /* RemoteStorageUnsubscribePublishedFileResult_t_123 */
case MAKE_CASE(1315, 4): len = 4; break; /* RemoteStorageUnsubscribePublishedFileResult_t_116x */
case MAKE_CASE(1316, 16): len = 24; break; /* RemoteStorageUpdatePublishedFileResult_t_125 */
case MAKE_CASE(1316, 12): len = 16; break; /* RemoteStorageUpdatePublishedFileResult_t_123 */
/* Conflict: case MAKE_CASE(1316, 16): len = 16; break; */ /* RemoteStorageUpdatePublishedFileResult_t_116x */
case MAKE_CASE(1317, 288): len = 296; break; /* RemoteStorageDownloadUGCResult_t_123 */
case MAKE_CASE(1317, 296): len = 296; break; /* RemoteStorageDownloadUGCResult_t_116x */
case MAKE_CASE(1318, 9748): len = 9760; break; /* RemoteStorageGetPublishedFileDetailsResult_t_126 */
case MAKE_CASE(1318, 9744): len = 9752; break; /* RemoteStorageGetPublishedFileDetailsResult_t_123 */
case MAKE_CASE(1318, 9752): len = 9752; break; /* RemoteStorageGetPublishedFileDetailsResult_t_119x */
/* Conflict: case MAKE_CASE(1318, 9752): len = 9752; break; */ /* RemoteStorageGetPublishedFileDetailsResult_t_119 */
case MAKE_CASE(1318, 9496): len = 9496; break; /* RemoteStorageGetPublishedFileDetailsResult_t_118 */
case MAKE_CASE(1319, 620): len = 624; break; /* RemoteStorageEnumerateWorkshopFilesResult_t_125 */
case MAKE_CASE(1319, 612): len = 616; break; /* RemoteStorageEnumerateWorkshopFilesResult_t_123 */
case MAKE_CASE(1319, 616): len = 616; break; /* RemoteStorageEnumerateWorkshopFilesResult_t_119 */
case MAKE_CASE(1320, 28): len = 32; break; /* RemoteStorageGetPublishedItemVoteDetailsResult_t_123 */
case MAKE_CASE(1320, 32): len = 32; break; /* RemoteStorageGetPublishedItemVoteDetailsResult_t_119 */
case MAKE_CASE(1324, 12): len = 16; break; /* RemoteStorageUpdateUserPublishedItemVoteResult_t_123 */
case MAKE_CASE(1324, 16): len = 16; break; /* RemoteStorageUpdateUserPublishedItemVoteResult_t_119 */
case MAKE_CASE(1325, 16): len = 24; break; /* RemoteStorageUserVoteDetails_t_123 */
case MAKE_CASE(1325, 24): len = 24; break; /* RemoteStorageUserVoteDetails_t_119 */
case MAKE_CASE(1326, 412): len = 416; break; /* RemoteStorageEnumerateUserSharedWorkshopFilesResult_t_123 */
case MAKE_CASE(1326, 416): len = 416; break; /* RemoteStorageEnumerateUserSharedWorkshopFilesResult_t_119 */
case MAKE_CASE(1327, 16): len = 24; break; /* RemoteStorageSetUserPublishedFileActionResult_t_123 */
case MAKE_CASE(1327, 24): len = 24; break; /* RemoteStorageSetUserPublishedFileActionResult_t_119 */
case MAKE_CASE(1330, 20): len = 24; break; /* RemoteStoragePublishedFileUpdated_t */
case MAKE_CASE(2101, 24): len = 32; break; /* HTTPRequestCompleted_t_132x */
case MAKE_CASE(2101, 20): len = 24; break; /* HTTPRequestCompleted_t_123 */
/* Conflict: case MAKE_CASE(2101, 24): len = 24; break; */ /* HTTPRequestCompleted_t_115 */
case MAKE_CASE(2102, 12): len = 16; break; /* HTTPRequestHeadersReceived_t_123 */
case MAKE_CASE(2102, 16): len = 16; break; /* HTTPRequestHeadersReceived_t_121x */
case MAKE_CASE(2103, 20): len = 24; break; /* HTTPRequestDataReceived_t_123 */
case MAKE_CASE(2103, 24): len = 24; break; /* HTTPRequestDataReceived_t_121x */
case MAKE_CASE(2803, 32): len = 40; break; /* SteamInputConfigurationLoaded_t */
case MAKE_CASE(2804, 24): len = 32; break; /* SteamInputGamepadSlotChange_t */
case MAKE_CASE(3402, 9768): len = 9784; break; /* SteamUGCRequestUGCDetailsResult_t_128x */
case MAKE_CASE(3402, 9764): len = 9776; break; /* SteamUGCRequestUGCDetailsResult_t_129 */
case MAKE_CASE(3402, 9760): len = 9768; break; /* SteamUGCRequestUGCDetailsResult_t_126 */
case MAKE_CASE(3403, 16): len = 24; break; /* CreateItemResult_t */
case MAKE_CASE(3405, 12): len = 16; break; /* ItemInstalled_t */
case MAKE_CASE(3406, 16): len = 24; break; /* DownloadItemResult_t */
case MAKE_CASE(3412, 20): len = 24; break; /* AddUGCDependencyResult_t */
case MAKE_CASE(3413, 20): len = 24; break; /* RemoveUGCDependencyResult_t */
case MAKE_CASE(3414, 16): len = 24; break; /* AddAppDependencyResult_t */
case MAKE_CASE(3415, 16): len = 24; break; /* RemoveAppDependencyResult_t */
case MAKE_CASE(3416, 148): len = 152; break; /* GetAppDependenciesResult_t */
case MAKE_CASE(3417, 12): len = 16; break; /* DeleteItemResult_t */
case MAKE_CASE(4502, 52): len = 56; break; /* HTML_NeedsPaint_t */
case MAKE_CASE(4503, 32): len = 40; break; /* HTML_StartRequest_t */
case MAKE_CASE(4505, 36): len = 48; break; /* HTML_URLChanged_t */
case MAKE_CASE(4506, 20): len = 24; break; /* HTML_FinishedRequest_t */
case MAKE_CASE(4507, 12): len = 16; break; /* HTML_OpenLinkInNewTab_t */
case MAKE_CASE(4508, 12): len = 16; break; /* HTML_ChangedTitle_t */
case MAKE_CASE(4513, 24): len = 32; break; /* HTML_LinkAtPosition_t */
case MAKE_CASE(4514, 12): len = 16; break; /* HTML_JSAlert_t */
case MAKE_CASE(4515, 12): len = 16; break; /* HTML_JSConfirm_t */
case MAKE_CASE(4516, 20): len = 24; break; /* HTML_FileOpenDialog_t */
case MAKE_CASE(4517, 20): len = 24; break; /* HTML_ComboNeedsPaint_t */
case MAKE_CASE(4521, 32): len = 40; break; /* HTML_NewWindow_t_132x */
case MAKE_CASE(4521, 28): len = 32; break; /* HTML_NewWindow_t_130x */
case MAKE_CASE(4523, 12): len = 16; break; /* HTML_StatusText_t */
case MAKE_CASE(4524, 12): len = 16; break; /* HTML_ShowToolTip_t */
case MAKE_CASE(4525, 12): len = 16; break; /* HTML_UpdateToolTip_t */
case MAKE_CASE(4704, 20): len = 24; break; /* SteamInventoryStartPurchaseResult_t */
case MAKE_CASE(5211, 12): len = 16; break; /* RequestPlayersForGameProgressCallback_t */
case MAKE_CASE(5212, 56): len = 64; break; /* RequestPlayersForGameResultCallback_t */
case MAKE_CASE(5213, 20): len = 24; break; /* RequestPlayersForGameFinalResultCallback_t */
case MAKE_CASE(5214, 20): len = 24; break; /* SubmitPlayerResultResultCallback_t */
case MAKE_CASE(5215, 12): len = 16; break; /* EndGameResultCallback_t */
case MAKE_CASE(5301, 276): len = 280; break; /* JoinPartyCallback_t */
case MAKE_CASE(5302, 12): len = 16; break; /* CreateBeaconCallback_t */
#endif
default: len = u_msg->m_cubParam; break;
}
#undef MAKE_CASE
w_msg->m_hSteamUser = u_msg->m_hSteamUser;
w_msg->m_iCallback = u_msg->m_iCallback;
w_msg->m_cubParam = len;
}
#ifdef __i386__
const struct callback_def callback_data[] =
{