On 2/11/2011 15:56, Jacek Caban wrote:
On 2/11/11 12:02 PM, Nikolay Sivov wrote:
On 2/11/2011 13:30, Alistair Leslie-Hughes wrote:
Hi,
From: "Nikolay Sivov" bunglehead@gmail.com Sent: Friday, February 11, 2011 9:27 PM To: "Alistair Leslie-Hughes" leslie_alistair@hotmail.com Cc: wine-devel@winehq.org Subject: Re: msxml3: Ignore IActiveScript interface for IXMLHTTPRequest
On 2/11/2011 12:25, Alistair Leslie-Hughes wrote:
Hi,
On 11/02/2011 8:12 PM, Nikolay Sivov wrote:
On 2/11/2011 10:51, Alistair Leslie-Hughes wrote: > Hi, > > > Changelog: > msxml3: Ignore IActiveScript interface for IXMLHTTPRequest What's a purpose of this?
To remove the FIXME from appearing in the logs.
What application is that? Does it appear running in browser scripting by any chance?
Yes, it was a website that uses XMLHTTPRequest to load files off the local filesystem.
My point is that browser scripting engine shouldn't query for that interface in a first place probably, so it's interesting to figure out why it's queried instead of silence it. Is it possible to reproduce that with wine-gecko or I need IE?
P.S. cc-ing Jacek, as he knows probably why such dead queries happen.
It's queried by mshtml security manager and the query is right. It's just the way to check if created object (usually via ActiveXObject call in jscript) is a script engine. Once script engine owns an objects, it queries for a few more ifaces for which returning E_NOINTERFACE is perfectly valid and expected behavior. I think the right fix in this case is silencing the FIXME (downgrading to WARN or TRACE). FIXME in QueryInterface implementation is a good thing for objects that implement a lot different ifaces and it's likely that lack of some will cause app failure or objects that are unlikely to be queried for unimplemented ifaces. I think it's not the case here.
Ok, thanks for explanation. So it's fine to silence it in this case or course.
Cheers, Jacek