Closed Bug 248017 Opened 20 years ago Closed 20 years ago

Cannot get to ISimpleDOM* interfaces on Windows XP

Categories

(Core :: Disability Access APIs, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

Details

(Keywords: access)

Attachments

(1 file)

On Windows XP, QueryInterface is not allowed from IAccessible to a custom
interface. The docs on MSDN even say that IServiceProvider::QueryService() must
be used, but don't say why.

Unfortunately we don't currently make it possible to use all of the ISimpleDOM*
interfaces from QueryService.
Attachment #151404 - Flags: review?(pkwarren)
Attachment #151404 - Flags: review?(pkwarren) → review+
Attachment #151404 - Flags: superreview?(darin)
Comment on attachment 151404 [details] [diff] [review]
Support any of our interfaces via QueryInterface or IServiceProvider::QueryService.() We ignore the refguid argument.

>Index: accessible/src/msaa/nsAccessibleWrap.cpp

> nsAccessibleWrap::QueryService(REFGUID guidService, REFIID iid, void** ppv)
...
>+  *ppv = NULL;
>+  return QueryInterface(iid, ppv);
> }

The first thing QueryInterface seems to do is set *ppv to NULL, so perhaps
it is redundant here to also set *ppv to NULL.	Or, are you worried that
someone might subclass nsAccessibleWrap and reimplement QueryInterface such
that it doesn't set *ppv to NULL up front?

sr=darin either way
Attachment #151404 - Flags: superreview?(darin) → superreview+
/cvsroot/mozilla/accessible/src/msaa/nsAccessibleWrap.cpp,v  <-- 
nsAccessibleWrap.cpp
new revision: 1.11; previous revision: 1.10
done
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: