howto fix bug 13462

Rob Shearman robertshearman at
Mon Sep 15 10:49:47 CDT 2008

2008/9/15 Louis Lenders <xerox_xerox2000 at>:
> Rob Shearman <robertshearman <at>> writes:
>> I suggest you write a test case that replicates what the application
>> does and either send it to wine-patches with appropriate todo_wine's
>> or attach it to the bug.
> Well, it looks like the app is only checking if the uuid of the interface is
> defined using Context_QueryInterface, and that's about it.
> It doesn't really seem to try to use anything from it, as Erich's initial hack
> is already enough to get the apps running as well (this
> one:

That's fine. You can still add a test that does the same as what the app does.

>> It might help you understand what needs to be done or it will help
>> someone else implement the functionality that is causing the
>> application to fail.
> So as far as i can tell, the functionality doesn't need to be implemented at
> all, it's just enough to fake as if it would exist, by returning S_OK, when
> Context_QueryInterface is called for this specific uuid.

That's not acceptable as that change will cause applications that do
use the returned interface to either crash on a NULL pointer (if you
set *ppv to NULL and return S_OK) or stack corruption (if you return a
pointer to the wrong interface). You will be turning a known
unimplemented feature into a buggy feature which will be harder to fix

> So what now?

If running the tests on Windows show that the interface in question is
implemented for the Context object then add that interface to the
object with stubbed functions.

Rob Shearman

More information about the wine-devel mailing list