Hi Jon,
Can you please explain why VARIANT_ValidateType rejects for instance VT_SAFEARRAY variants (and more) with DISP_E_BADVARTYPE?
Why does it handle the whole range VT_HRESULT - VT_CF as invalid (except VT_RECORD) ?
We got one InstallShield regression from this patch (where it wants to clear a VT_SAFEARRAY I think).
Ciao, Marcus
Hi Marcus,
Can you please explain why VARIANT_ValidateType rejects for instance VT_SAFEARRAY variants (and more) with DISP_E_BADVARTYPE?
Why does it handle the whole range VT_HRESULT - VT_CF as invalid (except VT_RECORD) ?
We got one InstallShield regression from this patch (where it wants to clear a VT_SAFEARRAY I think).
Hmm, my test harness for VariantClear tests every possible combination of variant type from 0 - 0xfff, with every possible combination of flags, and gets the same results under Wine as under XP here. I'll check that the patch in Wine is current and get back to you tomorrow.
Cheers, Jon
===== "Don't wait for the seas to part, or messiahs to come; Don't you sit around and waste this chance..." - Live
jon_p_griffiths@yahoo.com
__________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree
On Thu, Nov 13, 2003 at 04:01:43AM -0800, Jon Griffiths wrote:
Hi Marcus,
Can you please explain why VARIANT_ValidateType rejects for instance VT_SAFEARRAY variants (and more) with DISP_E_BADVARTYPE?
Why does it handle the whole range VT_HRESULT - VT_CF as invalid (except VT_RECORD) ?
We got one InstallShield regression from this patch (where it wants to clear a VT_SAFEARRAY I think).
Hmm, my test harness for VariantClear tests every possible combination of variant type from 0 - 0xfff, with every possible combination of flags, and gets the same results under Wine as under XP here. I'll check that the patch in Wine is current and get back to you tomorrow.
Hmm, sorry for the confusion, it was cleaned up in the meantime.
Your code is correct, the _copy_arg() code for ITypeLib::Invoke was at fault.
Ciao, Marcus