{
HTMLInputElement *This = impl_from_IHTMLInputElement(iface);
nsAString value_str;
- const PRUnichar *value = NULL;
nsresult nsres;
TRACE("(%p)->(%p)\n", This, p);
nsAString_Init(&value_str, NULL);
-
nsres = nsIDOMHTMLInputElement_GetValue(This->nsinput, &value_str);
- if(NS_SUCCEEDED(nsres)) {
- nsAString_GetData(&value_str, &value);
- *p = SysAllocString(value);
- }else {
- ERR("GetValue failed: %08x\n", nsres);
- }
-
- nsAString_Finish(&value_str);
-
- TRACE("value=%s\n", debugstr_w(*p));
- return S_OK;
+ return return_nsstr(nsres, &value_str, p);
}
static HRESULT WINAPI HTMLInputElement_put_name(IHTMLInputElement *iface, BSTR v)
BSTR ret;
int len;
+ if(!str)
+ return NULL;
+
len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
ret = SysAllocStringLen(NULL, len);
MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
if(exval)
ok_(__FILE__,line) (!strcmp_wa(bstr, exval), "value=%s\n", wine_dbgstr_w(bstr));
else
- ok_(__FILE__,line) (!exval, "exval != NULL\n");
+ ok_(__FILE__,line) (!bstr, "exval != NULL\n");
SysFreeString(bstr);
IHTMLInputElement_Release(input);
}
return;
bstr = a2bstr(val);
- hres = IHTMLInputElement_get_value(input, &bstr);
+ hres = IHTMLInputElement_put_value(input, bstr);
ok_(__FILE__,line) (hres == S_OK, "get_value failed: %08x\n", hres);
SysFreeString(bstr);
IHTMLInputElement_Release(input);
+
+ _test_input_value(line, unk, val);
}
#define test_input_src(i,s) _test_input_src(__LINE__,i,s)
hres = IHTMLStyle_Invoke(pStyle, dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT,
DISPATCH_PROPERTYPUT, ¶ms, &ret, NULL, NULL);
ok_(__FILE__,line) (hres == S_OK, "default. ret: %08x\n", hres);
+ VariantClear(&vDefault);
}
}
test_node_get_value_str((IUnknown*)elem, NULL);
test_input_value((IUnknown*)elem, NULL);
test_input_put_value((IUnknown*)elem, "test");
- test_input_value((IUnknown*)elem, NULL);
test_elem_class((IUnknown*)elem, "testclass");
test_elem_tabindex((IUnknown*)elem, 2);
test_elem_set_tabindex((IUnknown*)elem, 3);