[PATCH 1/3] shlwapi: Be less strict on which type of IShellFolder can be enumerated
Nikolay Sivov
nsivov at codeweavers.com
Sat Jun 5 10:16:41 CDT 2010
On 6/5/2010 19:09, Andrew Eikum wrote:
>>> Trouble is, I have no idea what it is used for. I tried testing most
>>> of the CLSIDs in shlguid.h with different combinations of flags, none
>>> of which had any effect. It must just be looking out for a small
>>> number of specific CLSIDs. One possible guess is that it tweaks the
>>> flags parameter when certain CLSIDs are detected, but none of my tests
>>> turned up anything interesting.
>>>
>>> Any thoughts? Should I just send as-is?
>>>
>> So it doesn't care about classid returned from IPersist. I think it's
>> enough now to add tests for not-called QI for IShellFolder and a test
>> for a bunch of known CLSIDs for folders. After that (if you dummy CLSID
>> is allowed too) probably it's ok to remove all checks.
>>
> I'm not sure I follow. As the tests in the patch show, QI is called up to
> two times, once for IPersist and once for IPersistFolder if the first
> fails. I can certainly add tests for returning different CLSIDs, though
> that seems uninteresting to me since they all behave identically.
>
I mean, create different types of shellfolders, then test that function
accepts them all. And a simple check that QI isn't called for
IShellFolder, so
argument expected to be IShellFolder pointer.
> Removing the code in shlwapi.404 will lead to test failures since Windows
> _does_ make QI and GetClassID calls, it's just unknown what it does with
> the data it gets.
>
> What do you think? Remove the tests? Add todo_wine and remove the
> 'dummy' code in shlwapi.404?
>
Remove tests and add a note in function code that this GetClassID method
is actually called for unknown purpose.
Another way is to make is accept another CLSID, if I got it right it is
why you started to patch it.
> Thanks for your feedback,
> Andrew
>
>
More information about the wine-devel
mailing list