Jacek Caban (@jacek) commented about dlls/vbscript/global.c:
- if (V_VT(args+i) == VT_ERROR) continue; - if (V_VT(args+i) == VT_NULL) return MAKE_VBSERROR(VBSE_ILLEGAL_NULL_USE); - if (FAILED(hres = to_int(args+i, &int_args.val[i-1]))) return hres; - } - - hres = VarFormatPercent(args, int_args.s.num_dig, int_args.s.inc_lead, int_args.s.use_parens, - int_args.s.group, 0, &str); - if (FAILED(hres)) return hres; + hres = parse_format_args(args, args_cnt, a); + if(FAILED(hres)) return hres;
+ V_VT(&v) = VT_EMPTY; + hres = VariantCopyInd(&v, args); + if(FAILED(hres)) return hres; + hres = VariantChangeTypeEx(&v, &v, This->ctx->lcid, 0, VT_R8); + if(FAILED(hres)) return hres; That could use `to_double`.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/10504#note_137603