advpack: Only do_ocx_reg (and thus DllRegisterServer) from RegisterOCX when 'N' is passed as a flag. Clarify documentation.

James Hawkins truiken at gmail.com
Sat Sep 24 17:18:51 CDT 2011


I recommend writing unit tests to answer the open questions.

Thanks,
James

On Sat, Sep 24, 2011 at 2:46 PM, Gerald Pfeifer <gerald at pfeifer.com> wrote:
> Hi James,
>
> On Thu, 13 May 2010, Gerald Pfeifer wrote:
>> Would you feel more comfortable leaving the documentation as is and
>> me just suggesting the following?
>>
>>     if(strchrW(str_flags,'I'))
>>         hr = do_ocx_reg(hm, TRUE);
>>
>> to replace
>>
>>     hr = do_ocx_reg(hm, TRUE);
>>
>> ?
>>
>>
>> Or would you prefer to submit a patch to clarify the documentation
>> (copying me) and based on that I hack the code?  That way we'd ensure
>> that the former is sufficiently clear and I assume you'll verify
>> whether the code matches that?
>
> I just realized I did not see a response to this.  How about the
> patch below that actually matches current documentation (which the
> current code does not seem to)?
>
> Gerald
>
>
>
> ChangeLog:
> Only register if I has been passed as a flag.
>
> ---
>  dlls/advpack/advpack.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/dlls/advpack/advpack.c b/dlls/advpack/advpack.c
> index 112d38a..c57933b 100644
> --- a/dlls/advpack/advpack.c
> +++ b/dlls/advpack/advpack.c
> @@ -519,7 +519,8 @@ HRESULT WINAPI RegisterOCX(HWND hWnd, HINSTANCE hInst, LPCSTR cmdline, INT show)
>     if (!hm)
>         goto done;
>
> -    hr = do_ocx_reg(hm, TRUE);
> +    if(strchrW(str_flags,'I'))
> +        hr = do_ocx_reg(hm, TRUE);
>
>  done:
>     FreeLibrary(hm);
> --
> 1.7.6
>



More information about the wine-patches mailing list