[PATCH] rpcrt4: compare networkoptions correctly (Coverity) (adjusted)
Rob Shearman
robertshearman at gmail.com
Sun Nov 8 04:21:57 CST 2009
2009/11/8 Marcus Meissner <meissner at suse.de>:
> @@ -84,6 +84,17 @@ static RPC_STATUS RpcAssoc_Alloc(LPCSTR Protseq, LPCSTR NetworkAddr,
> return RPC_S_OK;
> }
>
> +static BOOL compare_networkoptions(LPCWSTR opts1, LPCWSTR opts2)
> +{
> + if ((opts1 == NULL) && (opts2 == NULL))
> + return TRUE;
> + if ((opts1 == NULL) && (opts2 != NULL))
> + return FALSE;
> + if ((opts1 != NULL) && (opts2 == NULL))
> + return FALSE;
> + return !strcmpW(opts1, opts2);
> +}
> +
> RPC_STATUS RPCRT4_GetAssociation(LPCSTR Protseq, LPCSTR NetworkAddr,
> LPCSTR Endpoint, LPCWSTR NetworkOptions,
> RpcAssoc **assoc_out)
> @@ -97,8 +108,8 @@ RPC_STATUS RPCRT4_GetAssociation(LPCSTR Protseq, LPCSTR NetworkAddr,
> if (!strcmp(Protseq, assoc->Protseq) &&
> !strcmp(NetworkAddr, assoc->NetworkAddr) &&
> !strcmp(Endpoint, assoc->Endpoint) &&
> - ((!assoc->NetworkOptions && !NetworkOptions) || !strcmpW(NetworkOptions, assoc->NetworkOptions)))
> - {
> + compare_networkoptions(NetworkOptions, assoc->NetworkOptions)
> + ) {
Looks good functionally, but please don't change the style.
> assoc->refs++;
> *assoc_out = assoc;
> LeaveCriticalSection(&assoc_list_cs);
Thanks,
--
Rob Shearman
More information about the wine-devel
mailing list