Saulius Krasuckas wrote:
* On Sun, 14 Aug 2005, Jacek Caban wrote:
I'm not sure if it is a correct fix. Although it avoids crashes,
much less functionality of QueryStatus is tested. Before
your patch all possible commands were tested.
This is true only for nt family windows. :-P
On 9x test function exits on an exception.
As I wrote before, it'll be probably true for 9x family after
UIActivate succeeded.
it seems to be a case similar to crashes on xp while HTMLDocument is not
active in place. In this case it is not active in place because
UIActivate fails. Looking at the test results, UIActivate is a problem
on every win 9x and causes most tests to fail. So first UIActivate
should be fixed and then, if this problem remains, we'll be sure that
your fix is correct.
I don't understand much in all this OLE/In-Place stuph, so I agree, but
still I doubt this would be a sufficient to proof my patch is correct.
:-]
Presently if you want to make this test not to crash, you may disable
IOleCommand tests if UIActivate fails.
I will try, but what should be done with this (inside test_HTMLDocument)?
| OLECMD cmd[2] = {
| {OLECMDID_OPEN, 0xf0f0},
| {OLECMDID_GETPRINTTEMPLATE+1, 0xf0f0}
| };
|
| hres = IOleCommandTarget_QueryStatus(cmdtrg, NULL, 2, cmd, NULL);
| ok(hres == OLECMDERR_E_NOTSUPPORTED,
| "QueryStatus failed: %08lx, expected
OLECMDERR_E_NOTSUPPORTED\n", hres);
It should be disabled as well.
Or IOW, why first call generates exception on OLECMDID_OPEN command while
second do not?
| hres = IOleCommandTarget_QueryStatus(cmdtrg, NULL, 2, cmd, NULL);
| hres = IOleCommandTarget_QueryStatus(cmdtrg, &IID_IHTMLDocument2, 2,
cmd, NULL);
OLECMDID_OPEN seems to be supported at least on winME. I am curious, why?
The second call returns after checking that IID_IHTMLDocument2 is not a
valid command
group id and it doesn't have to check anything else like the current
state of
HTMLDocument.
My guess is that it requires to be loaded before a call to UIActivate,
What do you exactly mean by "it"?
HTMLDocument
so the attached patch might help (even if so, a few other tests will
fail, but currently the most interesting is UIActivate),
No, the patch didn't help.
OK, I'll take a look at this today or tomorrow.
> Is something like this OK? I have "borrowed" boolean variable
> expect_SetActiveObject_active.
Yes, it looks good.
Thanks,
Jacek