diff --git a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils001.cpp b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils001.cpp index e35611db..e4bea408 100644 --- a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils001.cpp +++ b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils001.cpp @@ -130,7 +130,9 @@ NTSTATUS ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValueInfo( void { struct ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValueInfo_params *params = (struct ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValueInfo_params *)args; struct u_ISteamNetworkingUtils_SteamNetworkingUtils001 *iface = (struct u_ISteamNetworkingUtils_SteamNetworkingUtils001 *)params->u_iface; - params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + char *u_str; + params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName ? (const char **)&u_str : nullptr, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + if (params->pOutName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils002.cpp b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils002.cpp index 9e047fee..1a38cbeb 100644 --- a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils002.cpp +++ b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils002.cpp @@ -130,7 +130,9 @@ NTSTATUS ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValueInfo( void { struct ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValueInfo_params *params = (struct ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValueInfo_params *)args; struct u_ISteamNetworkingUtils_SteamNetworkingUtils002 *iface = (struct u_ISteamNetworkingUtils_SteamNetworkingUtils002 *)params->u_iface; - params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + char *u_str; + params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName ? (const char **)&u_str : nullptr, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + if (params->pOutName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils003.cpp b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils003.cpp index fc36b3ce..dfba366a 100644 --- a/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils003.cpp +++ b/lsteamclient/cppISteamNetworkingUtils_SteamNetworkingUtils003.cpp @@ -122,7 +122,9 @@ NTSTATUS ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValueInfo( void { struct ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValueInfo_params *params = (struct ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValueInfo_params *)args; struct u_ISteamNetworkingUtils_SteamNetworkingUtils003 *iface = (struct u_ISteamNetworkingUtils_SteamNetworkingUtils003 *)params->u_iface; - params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + char *u_str; + params->_ret = iface->GetConfigValueInfo( params->eValue, params->pOutName ? (const char **)&u_str : nullptr, params->pOutDataType, params->pOutScope, params->pOutNextValue ); + if (params->pOutName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003.cpp index b1fbfa47..3375f86c 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003.cpp @@ -137,7 +137,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004.cpp index 297cf4ce..0c4fb32f 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004.cpp @@ -153,7 +153,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005.cpp index bb4e70c9..20c80998 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005.cpp @@ -153,7 +153,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006.cpp index f3acc141..73250624 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006.cpp @@ -161,7 +161,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007.cpp index 1b7c41f8..004b90b9 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007.cpp @@ -161,7 +161,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008.cpp index 53c0cbf8..b3fab8dc 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008.cpp @@ -193,7 +193,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009.cpp index 2b6f8fda..8350bf47 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009.cpp @@ -193,7 +193,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010.cpp index 1eeb9ac8..81709a57 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010.cpp @@ -193,7 +193,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011.cpp index 44e8c489..34443f6c 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011.cpp @@ -193,7 +193,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012.cpp index 4c96adf1..18ebded7 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012.cpp @@ -193,7 +193,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013.cpp index 2b6b22a9..cca6a328 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013.cpp @@ -217,7 +217,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014.cpp index 31415790..bf76febd 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014.cpp @@ -217,7 +217,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016.cpp b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016.cpp index 68195d73..77f104e4 100644 --- a/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016.cpp +++ b/lsteamclient/cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016.cpp @@ -217,7 +217,9 @@ NTSTATUS ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDetai { struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDetails_params *params = (struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDetails_params *)args; struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016 *iface = (struct u_ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016 *)params->u_iface; - params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName, params->pnFileSizeInBytes, params->pSteamIDOwner ); + char *u_str; + params->_ret = iface->GetUGCDetails( params->hContent, params->pnAppID, params->ppchName ? (char **)&u_str : nullptr, params->pnFileSizeInBytes, params->pSteamIDOwner ); + if (params->ppchName) params->_str = u_str; return 0; } diff --git a/lsteamclient/gen_wrapper.py b/lsteamclient/gen_wrapper.py index 38e6c73e..b3c642cd 100755 --- a/lsteamclient/gen_wrapper.py +++ b/lsteamclient/gen_wrapper.py @@ -422,6 +422,11 @@ PRETOUCH_TYPES = { "const char *": " IsBadStringPtrA({0}, -1);\n", } +OUTSTR_PARAMS = { + "GetUGCDetails": "ppchName", + "GetConfigValueInfo": "pOutName", +} + class Padding: def __init__(self, offset, size): self.offset = offset @@ -685,6 +690,9 @@ class Method: params = [ret] + params names = ['_ret'] + names + if self.name in OUTSTR_PARAMS and OUTSTR_PARAMS[self.name] in names: + params = ["struct u_buffer _str"] + params + params = ['struct u_iface u_iface'] + params names = ['u_iface'] + names @@ -969,6 +977,8 @@ def handle_method_cpp(method, classname, out): out(u'{\n') out(f' struct {method.full_name}_params *params = (struct {method.full_name}_params *)args;\n') out(f' struct u_{klass.full_name} *iface = (struct u_{klass.full_name} *)params->u_iface;\n') + if method.name in OUTSTR_PARAMS and OUTSTR_PARAMS[method.name] in names: + out(u' char *u_str;\n') params = list(zip(names[1:], method.get_arguments())) for i, (name, param) in enumerate(params[:-1]): @@ -1032,6 +1042,8 @@ def handle_method_cpp(method, classname, out): if name in need_convert: return f"{pfx}u_{name}" if name in manual_convert: return f"u_{name}" if name in path_conv_wtou: return f"u_{name}" + if name == OUTSTR_PARAMS.get(method.name, None): + return f'params->{name} ? ({declspec(param, "", "u_")})&u_str : nullptr' return f'params->{name}' params = [param_call(n, p) for n, p in zip(names[1:], method.get_arguments())] @@ -1062,6 +1074,9 @@ def handle_method_cpp(method, classname, out): else: out(f' steamclient_free_path( u_{name} );\n') + if method.name in OUTSTR_PARAMS and OUTSTR_PARAMS[method.name] in names: + out(f' if (params->{OUTSTR_PARAMS[method.name]}) params->_str = u_str;\n'); + out(u' return 0;\n') out(u'}\n\n') @@ -1118,6 +1133,8 @@ def handle_method_c(klass, method, winclassname, out): out(pretouch.format(p.spelling)) out(f' STEAMCLIENT_CALL( {method.full_name}, ¶ms );\n') + if method.name in OUTSTR_PARAMS and OUTSTR_PARAMS[method.name] in names: + out(f' if ({OUTSTR_PARAMS[method.name]}) *{OUTSTR_PARAMS[method.name]} = get_unix_buffer( params._str );\n') if method.name.startswith('CreateFakeUDPPort'): out(u' return create_winISteamNetworkingFakeUDPPort_SteamNetworkingFakeUDPPort001( params._ret );\n') diff --git a/lsteamclient/unixlib_generated.h b/lsteamclient/unixlib_generated.h index f8681770..e1e6cddc 100644 --- a/lsteamclient/unixlib_generated.h +++ b/lsteamclient/unixlib_generated.h @@ -4377,6 +4377,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_UGCDownload_p struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -4539,6 +4540,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_UGCDownload_p struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -4701,6 +4703,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_UGCDownload_p struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -4946,6 +4949,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -5316,6 +5320,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -5718,6 +5723,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -6120,6 +6126,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -6524,6 +6531,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -6937,6 +6945,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -7351,6 +7360,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -7793,6 +7803,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -8235,6 +8246,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -8677,6 +8689,7 @@ struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDownloa struct ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDetails_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint64_t hContent; uint32_t *pnAppID; @@ -43421,6 +43434,7 @@ struct ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValue_params struct ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValueInfo_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint32_t eValue; const char **pOutName; @@ -43588,6 +43602,7 @@ struct ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValue_params struct ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValueInfo_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint32_t eValue; const char **pOutName; @@ -43762,6 +43777,7 @@ struct ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValue_params struct ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValueInfo_params { struct u_iface u_iface; + struct u_buffer _str; int8_t _ret; uint32_t eValue; const char **pOutName; diff --git a/lsteamclient/winISteamNetworkingUtils.c b/lsteamclient/winISteamNetworkingUtils.c index fc55e72a..8c36b90c 100644 --- a/lsteamclient/winISteamNetworkingUtils.c +++ b/lsteamclient/winISteamNetworkingUtils.c @@ -231,6 +231,7 @@ int8_t __thiscall winISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValu }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamNetworkingUtils_SteamNetworkingUtils001_GetConfigValueInfo, ¶ms ); + if (pOutName) *pOutName = get_unix_buffer( params._str ); return params._ret; } @@ -572,6 +573,7 @@ int8_t __thiscall winISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValu }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamNetworkingUtils_SteamNetworkingUtils002_GetConfigValueInfo, ¶ms ); + if (pOutName) *pOutName = get_unix_buffer( params._str ); return params._ret; } @@ -914,6 +916,7 @@ int8_t __thiscall winISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValu }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamNetworkingUtils_SteamNetworkingUtils003_GetConfigValueInfo, ¶ms ); + if (pOutName) *pOutName = get_unix_buffer( params._str ); return params._ret; } diff --git a/lsteamclient/winISteamRemoteStorage.c b/lsteamclient/winISteamRemoteStorage.c index e88a8c11..e4207b44 100644 --- a/lsteamclient/winISteamRemoteStorage.c +++ b/lsteamclient/winISteamRemoteStorage.c @@ -507,6 +507,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -851,6 +852,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -1206,6 +1208,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -1727,6 +1730,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -2469,6 +2473,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -3269,6 +3274,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -4073,6 +4079,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -4880,6 +4887,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -5703,6 +5711,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -6527,6 +6536,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -7399,6 +7409,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -8274,6 +8285,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; } @@ -9153,6 +9165,7 @@ int8_t __thiscall winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016 }; TRACE("%p\n", _this); STEAMCLIENT_CALL( ISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016_GetUGCDetails, ¶ms ); + if (ppchName) *ppchName = get_unix_buffer( params._str ); return params._ret; }