May 4, 2026
4:33 p.m.
Jacek Caban (@jacek) commented about dlls/oleaut32/variant.c:
if (leftvt == VT_NULL || rightvt == VT_NULL) { - /* - * Special cases for when left variant is VT_NULL - * (VT_NULL & 0 = VT_NULL, VT_NULL & value = value) - */ + /* Three-valued logic for `And` with Null: + * zero And Null = zero (typed by the resvt computed above) + * nonzero And Null = Null + * Null And Null = Null + * + * Both orderings must produce the same result. */ + VARIANT *other; + VARTYPE othervt;
You may just use `V_VT(other)`. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10673#note_138751