Yuxuan Shui
160e28f1bd
lsteamclient: Point GMFilePath to Proton SoundFonts
2025-04-24 18:05:59 +03:00
Paul Gofman
8d4661b0f3
lsteamclient: Avoid memory leak and frequent allocation in steamclient_Steam_BGetCallback().
...
CW-Bug-Id: #24806
2025-04-24 18:05:59 +03:00
Billy Laws
8ff40aad6e
lsteamclient: Add support for ARM64.
2025-04-24 18:03:45 +03:00
Billy Laws
10f96bfa53
lsteamclient: Allocate runtime sized array dynamically.
2025-04-24 18:03:45 +03:00
Rémi Bernon
d3e44f677f
lsteamclient: Build with long types.
2025-04-24 18:03:45 +03:00
Billy Laws
c295dcb636
lsteamclient: Generate WOW64 thunks.
2025-04-24 18:03:45 +03:00
Billy Laws
725044535f
lsteamclient: Pad some client pointers.
2025-04-24 18:03:45 +03:00
Billy Laws
63ea48a0eb
lsteamclient: Use templated wrappers for other steamclient functions.
2025-04-24 18:03:45 +03:00
Billy Laws
2dd569b5e6
lsteamclient: Use a cookie to pass unix side temporary CallbackMsg_t.
2025-04-24 18:03:45 +03:00
Billy Laws
0f5e178c8f
lsteamclient: Implement WOW64 callback handling.
2025-04-24 18:03:45 +03:00
Billy Laws
bdb386dc4f
lsteamclient: Generate w32<->u64 structure converters.
2025-04-24 18:03:45 +03:00
Rémi Bernon
203280136e
lsteamclient: Re-allocate filter arrays for WOW64 conversion.
2025-04-24 18:03:45 +03:00
Billy Laws
95d76758be
lsteamclient: Manually wrap ISteamRemoteStorage_UpdatePublishedFile.
2025-04-24 18:03:45 +03:00
Rémi Bernon
995d3cf28b
lsteamclient: Generate type-annotated 32bit pointers.
2025-04-24 18:03:45 +03:00
Rémi Bernon
1f3b23fbba
lsteamclient: Get rid of some unnecessary structs.
2025-04-24 18:03:45 +03:00
Rémi Bernon
bdc735205a
lsteamclient: Generate callback tables with inline converters.
2025-04-24 18:03:45 +03:00
Rémi Bernon
8cd16ffc70
lsteamclient: Simplify the struct converter code generation.
2025-04-24 18:03:45 +03:00
Billy Laws
0804e0b81f
lsteamclient: Template steam network manual wrappers.
2025-04-24 18:03:45 +03:00
Rémi Bernon
6670fd4fdf
lsteamclient: Move some networking messages code around.
2025-04-24 18:03:45 +03:00
Billy Laws
3378ff7f66
lsteamclient: Use templates for networking message conversions.
2025-04-24 18:03:45 +03:00
Rémi Bernon
6d06d8bc2d
lsteamclient: Use function overloads for networking message conversions.
2025-04-24 18:03:45 +03:00
Rémi Bernon
8d0ab1f8d3
lsteamclient: Use overloads and static dispatch for networking_message.
2025-04-24 18:03:44 +03:00
Rémi Bernon
11083b94b5
lsteamclient: Use the PE side request to cache GetServerDetails results.
2025-04-24 18:03:44 +03:00
Rémi Bernon
76b98269dd
lsteamclient: Use the buffer cache for ISteamMatchmakingServers_GetServerDetails.
2025-04-24 18:03:44 +03:00
Rémi Bernon
8e9e7b97ab
lsteamclient: Keep the unix side response object on the PE side request.
2025-04-24 18:03:44 +03:00
Rémi Bernon
47d5d59f1b
lsteamclient: Allocate server list request handles on the PE side.
2025-04-24 18:03:44 +03:00
Rémi Bernon
1a0811b6cc
lsteamclient: Manually wrap ISteamMatchmakingServers on the PE side.
2025-04-24 18:03:44 +03:00
Rémi Bernon
3a20f26df9
lsteamclient: Manually wrap some unix side ISteamMatchmakingServers methods.
...
This avoids returning unix-side server info structures from the
PE-side. For the v2 API requests are wrapped entirely and for v1
API as there is no explicit release function, results are cached
forvever using the buffer cache.
2025-04-24 18:03:44 +03:00
Rémi Bernon
375815c5ba
lsteamclient: Delete unix allocated object if no server list request is returned.
2025-04-24 18:03:44 +03:00
Rémi Bernon
24af2813d1
lsteamclient: Use templated wrappers for matchmaking servers.
2025-04-24 18:03:44 +03:00
Billy Laws
0e6cc204b6
lsteamclient: Move ISteamMatchmakingServers thunks to a separate file.
2025-04-24 18:03:44 +03:00
Billy Laws
c059a702ae
lsteamclient: Drop unused vtable callback argument.
2025-04-24 18:03:44 +03:00
Rémi Bernon
3dab466a9a
vrclient: Use the buffer cache for indirectly returned strings.
2025-04-24 18:03:44 +03:00
Billy Laws
76e9208d43
lsteamclient: Use the buffer cache for indirectly returned strings.
2025-04-24 18:03:44 +03:00
Billy Laws
b722943316
lsteamclient: Use a string cache for returned unix side strings.
2025-04-24 18:03:44 +03:00
Billy Laws
6c13702ab3
lsteamclient: Introduce unix-side buffer cache with PE allocate pointers.
...
There are several steam API calls that currently pass unix pointers
for e.g. strings directly to the PE-side, this allows for caching such
return values and returning a PE-side pointer instead.
2025-04-24 18:03:44 +03:00
Rémi Bernon
a41f9b8288
lsteamclient: Update cxx.h to latest msvcrt version.
2025-04-24 18:03:44 +03:00
Rémi Bernon
2a68b5d96f
lsteamclient: Use templates for steam input manual wrappers.
2025-04-24 18:03:44 +03:00
Rémi Bernon
d89c5c80bb
lsteamclient: Use 64bit handles for unix side interface pointers.
...
Based on a patch from Billy Laws.
2025-04-24 18:03:44 +03:00
Rémi Bernon
661da904e4
lsteamclient: Rename w_steam_iface to w_iface.
2025-04-24 18:03:44 +03:00
Rémi Bernon
6b8c5e4ef0
lsteamclient: Get rid of unnecessary U_PTR / W_PTR macros.
2025-04-24 18:03:44 +03:00
Billy Laws
195e7ab1b7
lsteamclient: Wrap more returned unix side interfaces.
2025-04-24 18:03:44 +03:00
Billy Laws
ac408239a9
lsteamclient: Use a templated wrapper for ISteamUtils GetAPICallResult.
2025-04-24 18:03:44 +03:00
Rémi Bernon
2a69a32cf8
lsteamclient: Add a new export to initialize registry.
...
CW-Bug-Id: #24510
2025-04-24 18:03:43 +03:00
Rémi Bernon
3a4858bd6b
lsteamclient: Add a missing parameter.
...
CW-Bug-Id: #24510
2025-04-24 18:03:43 +03:00
Billy Laws
42f2d563a4
steamclient: Call Windows vtable callbacks with the correct arg count
...
The x86 Windows ABI pushes all arguments onto the stack in the caller
and expects the callee to clean them up. The mismatch in parameter
counts thus causes the stack to be offset after calling these
callbacks leading to a crash.
2025-04-24 17:58:12 +03:00
Arkadiusz Hiler
a62e072e94
lsteamclient: Generate SteamWorks SDK 1.62 support.
2025-03-20 18:48:22 +02:00
Arkadiusz Hiler
5b723fb5f4
lsteamclient: Generate SteamWorks SDK 1.61 support.
2025-01-29 23:01:30 +02:00
Paul Gofman
7a651eba33
lsteamclient: Only free SteamMatchmakingServerListResponse callback after ISteamMatchMakingServers::ReleaseRequest().
...
And leak the callback for SteamMatchMakingServers v001
(same as before e3798c1adbdd7a424ac544bec592b93f6c6289f5 for both versions).
CW-Bug-Id: #24528
2024-11-28 19:19:11 +02:00
Paul Gofman
01c636ddb8
lsteamclient: Make SteamMatchMakingServers::ReleaseRequest() manual.
...
CW-Bug-Id: #24528
2024-11-28 19:19:11 +02:00