On Tue, Oct 20, 2015 at 08:00:26PM +0100, Huw Davies wrote:
On 20 Oct 2015, at 19:25, Andrew Eikum wrote:
-static HRESULT WINAPI ShellDispatch_ShellExecute(IShellDispatch6 *iface, BSTR file, VARIANT args, VARIANT dir, - VARIANT op, VARIANT show) +static HRESULT WINAPI ShellDispatch_ShellExecute(IShellDispatch6 *iface, + BSTR file, VARIANT v_args, VARIANT v_dir, VARIANT v_op, VARIANT v_show) { - FIXME("(%s): stub\n", debugstr_w(file)); - return E_NOTIMPL; + VARIANT args_str, dir_str, op_str, show_str; + WCHAR *args = NULL, *dir = NULL, *op = NULL; + INT show = 0; + HINSTANCE ret; + + TRACE("(%s, %s, %s, %s, %s)\n", debugstr_w(file), debugstr_variant(&v_args), + debugstr_variant(&v_dir), debugstr_variant(&v_op), debugstr_variant(&v_show)); + + VariantInit(&v_args);
Did you mean to args_str here?
+ VariantChangeType(&args_str, &v_args, 0, VT_BSTR); + if (V_VT(&v_args) == VT_BSTR) + args = V_BSTR(&v_args);
and also args_str here?
(and similar occurrences below). Huw.
Yep, thanks for noticing. I'll re-send. Andrew