ReactOS regression inrpcrt4
Zebediah Figura
z.figura12 at gmail.com
Mon Aug 31 12:25:04 CDT 2020
Hello Fabian,
On 8/31/20 11:59 AM, Fabian Maurer wrote:
> Hello Zebediah,
>
> starting with commit https://github.com/wine-mirror/wine/commit/9271efc0c746
> there's a lot of log spam in ReactOS:
> "RpcBindingFree returned 0x6a6"
> So far I couldn't reproduce the error in Wine though.
>
> I'm attaching a proposed patch that fixes the issue. Could you please take a
> look on whether the attached patch would be suitable for inclusion into Wine,
> or whether that problem points to another underlying issue?
I don't think the patch is correct as given. I'm not very knowledgeable
in binding handles, but as far as I'm aware they are allowed to be NULL.
Working from -Os output, for the following IDL:
[
uuid(deadbeef-0000-0000-0000-000000000000),
version(1.0),
]
interface test
{
struct apple
{
int i;
};
typedef [handle] struct apple * apple_handle;
void a([unique] apple_handle binding);
}
MIDL generates the following (trimmed) output:
void a(
/* [unique] */ apple_handle binding)
{
RPC_BINDING_HANDLE _Handle = 0;
/* ... */
RpcTryFinally
{
/* ... */
_Handle = apple_handle_bind(binding);;
if(( _Handle == 0 ) )
{
RpcRaiseException(RPC_S_INVALID_BINDING);
}
/* ... */
}
RpcFinally
{
NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
if(_Handle)
{
apple_handle_unbind(binding,_Handle);
}
}
RpcEndFinally
}
We're missing a NULL check for "_Handle" (i.e. "hbinding" in our code),
but there's no check for "binding".
Is there actually a bug, or just added console output?
>
> Regards,
> Fabian Maurer
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20200831/5ad07a01/attachment.sig>
More information about the wine-devel
mailing list