oleaut32: preliminary support for VT_DISPATCH as parameters to VarAdd (and other 2-operand operations) (try 2) (RESEND)

Alex Villací­s Lasso a_villacis at palosanto.com
Thu Dec 14 11:37:15 CST 2006


Alex Villací­s Lasso escribió:
> Robert Shearman escribió:
>> Alex Villací­s Lasso wrote:
>>> @@ -3114,6 +3155,13 @@
>>>            debugstr_VF(left), right, debugstr_VT(right), 
>>> debugstr_VF(right),
>>>            result);
>>>  
>>> +    /* Handle VT_DISPATCH by recursively calling op on result of 
>>> IDispatch_Invoke */
>>> +    if (((V_VT(left) & VT_TYPEMASK) == VT_DISPATCH || +        
>>> (V_VT(right) & VT_TYPEMASK) == VT_DISPATCH) &&
>>> +        (V_VT(left) & VT_TYPEMASK) != VT_NULL && +        
>>> (V_VT(right) & VT_TYPEMASK) != VT_NULL) +        return 
>>> VARIANT_InvokeDispatchOp(left, right, result, VarAdd);
>>> +
>>>      VariantInit(&lv);
>>>      VariantInit(&rv);
>>>      VariantInit(&tv);
>>>   
>>
>> I think you could solve this without recursion, in the same way that 
>> other types are coerced.
>>
> How about this patch? This one fetches the result of IDispatch 
> evaluation into a temporary VARIANT without recursion.
>
> Changelog:
> * Add support for receiving of VT_DISPATCH parameters in several 
> operator functions
>
Resending since there was no response since Monday.

-- 
The following cryptic message was allegedly found in the inner edge of a Windows
XP installation CD:

4F6E65204F5320746F2072756C65207468656D20616C6C2C204F6E65204F5320746F2066696E6420
7468656D2C0D0A4F6E65204F5320746F206272696E67207468656D20616C6C20616E6420696E2074
6865206461726B6E6573732062696E64207468656D2E0A

It is rumored that only a true Unix Wizard can decypher this mysterious message,
which supposedly encodes the true nature and purpose of the software.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: wine-oleaut32-variant-arithop-vt_dispatch-try2.patch
Type: text/x-patch
Size: 17515 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20061214/76396d19/wine-oleaut32-variant-arithop-vt_dispatch-try2-0001.bin


More information about the wine-patches mailing list